mirror of
https://github.com/neovim/neovim.git
synced 2025-09-13 14:58:18 +00:00
object_to_vim: Fix buffer/window/tabpage conversion on BE systems
Since data.integer is a different (larger) integer type than data.{buffer,window,tabpage}, we cannot abuse the union by using data.integer to access the value for all 4 types. Instead, remove the {buffer,window,tabpage} members and always use the integer member. In order to accomodate this, perform distinct validation and coercion between the Integer type and Buffer/Window/Tabpage types in object_to_vim, msgpack_rpc helpers, and gendispatch.lua.
This commit is contained in:
@@ -91,9 +91,6 @@ typedef enum {
|
||||
struct object {
|
||||
ObjectType type;
|
||||
union {
|
||||
Buffer buffer;
|
||||
Window window;
|
||||
Tabpage tabpage;
|
||||
Boolean boolean;
|
||||
Integer integer;
|
||||
Float floating;
|
||||
|
Reference in New Issue
Block a user