xsettings: Use glib byte order functions
This commit is contained in:
@ -95,8 +95,6 @@ ignore_errors (Display *display, XErrorEvent *event)
|
|||||||
return True;
|
return True;
|
||||||
}
|
}
|
||||||
|
|
||||||
static char local_byte_order = '\0';
|
|
||||||
|
|
||||||
#define BYTES_LEFT(buffer) ((buffer)->data + (buffer)->len - (buffer)->pos)
|
#define BYTES_LEFT(buffer) ((buffer)->data + (buffer)->len - (buffer)->pos)
|
||||||
|
|
||||||
static XSettingsResult
|
static XSettingsResult
|
||||||
@ -111,10 +109,10 @@ fetch_card16 (XSettingsBuffer *buffer,
|
|||||||
x = *(CARD16 *)buffer->pos;
|
x = *(CARD16 *)buffer->pos;
|
||||||
buffer->pos += 2;
|
buffer->pos += 2;
|
||||||
|
|
||||||
if (buffer->byte_order == local_byte_order)
|
if (buffer->byte_order == MSBFirst)
|
||||||
*result = x;
|
*result = GUINT16_FROM_BE (x);
|
||||||
else
|
else
|
||||||
*result = (x << 8) | (x >> 8);
|
*result = GUINT16_FROM_LE (x);
|
||||||
|
|
||||||
return XSETTINGS_SUCCESS;
|
return XSETTINGS_SUCCESS;
|
||||||
}
|
}
|
||||||
@ -145,10 +143,10 @@ fetch_card32 (XSettingsBuffer *buffer,
|
|||||||
x = *(CARD32 *)buffer->pos;
|
x = *(CARD32 *)buffer->pos;
|
||||||
buffer->pos += 4;
|
buffer->pos += 4;
|
||||||
|
|
||||||
if (buffer->byte_order == local_byte_order)
|
if (buffer->byte_order == MSBFirst)
|
||||||
*result = x;
|
*result = GUINT32_FROM_BE (x);
|
||||||
else
|
else
|
||||||
*result = (x << 24) | ((x & 0xff00) << 8) | ((x & 0xff0000) >> 8) | (x >> 24);
|
*result = GUINT32_FROM_LE (x);
|
||||||
|
|
||||||
return XSETTINGS_SUCCESS;
|
return XSETTINGS_SUCCESS;
|
||||||
}
|
}
|
||||||
@ -180,8 +178,6 @@ parse_settings (unsigned char *data,
|
|||||||
CARD32 i;
|
CARD32 i;
|
||||||
XSettingsSetting *setting = NULL;
|
XSettingsSetting *setting = NULL;
|
||||||
|
|
||||||
local_byte_order = xsettings_byte_order ();
|
|
||||||
|
|
||||||
buffer.pos = buffer.data = data;
|
buffer.pos = buffer.data = data;
|
||||||
buffer.len = len;
|
buffer.len = len;
|
||||||
|
|
||||||
|
|||||||
@ -149,10 +149,3 @@ xsettings_list_lookup (XSettingsList *list,
|
|||||||
|
|
||||||
return g_hash_table_lookup (list, name);
|
return g_hash_table_lookup (list, name);
|
||||||
}
|
}
|
||||||
|
|
||||||
char
|
|
||||||
xsettings_byte_order (void)
|
|
||||||
{
|
|
||||||
CARD32 myint = 0x01020304;
|
|
||||||
return (*(char *)&myint == 1) ? MSBFirst : LSBFirst;
|
|
||||||
}
|
|
||||||
|
|||||||
@ -32,7 +32,6 @@ extern "C" {
|
|||||||
|
|
||||||
/* Renames for GDK inclusion */
|
/* Renames for GDK inclusion */
|
||||||
|
|
||||||
#define xsettings_byte_order _gdk_x11_xsettings_byte_order
|
|
||||||
#define xsettings_client_destroy _gdk_x11_xsettings_client_destroy
|
#define xsettings_client_destroy _gdk_x11_xsettings_client_destroy
|
||||||
#define xsettings_client_get_setting _gdk_x11_xsettings_client_get_setting
|
#define xsettings_client_get_setting _gdk_x11_xsettings_client_get_setting
|
||||||
#define xsettings_client_new _gdk_x11_xsettings_client_new
|
#define xsettings_client_new _gdk_x11_xsettings_client_new
|
||||||
@ -110,8 +109,6 @@ XSettingsResult xsettings_list_insert (XSettingsList **list,
|
|||||||
XSettingsSetting *xsettings_list_lookup (XSettingsList *list,
|
XSettingsSetting *xsettings_list_lookup (XSettingsList *list,
|
||||||
const char *name);
|
const char *name);
|
||||||
|
|
||||||
char xsettings_byte_order (void);
|
|
||||||
|
|
||||||
#define XSETTINGS_PAD(n,m) ((n + m - 1) & (~(m-1)))
|
#define XSETTINGS_PAD(n,m) ((n + m - 1) & (~(m-1)))
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
|||||||
Reference in New Issue
Block a user