alignment niceness for ARM :)

SVN revision: 7127
This commit is contained in:
Carsten Haitzler 2003-07-10 23:18:42 +00:00
parent 426a67340f
commit 0bd04fcad7
3 changed files with 16 additions and 41 deletions

View File

@ -26,7 +26,7 @@ FILE *_eet_memfile_write_open(void **data, size_t *size);
void _eet_memfile_write_close(FILE *f);
#ifndef PATH_MAX
#define PATH_MAX 4096
#define PATH_MAX 4095
#endif
#endif

View File

@ -863,19 +863,11 @@ eet_data_put_char(void *src, int *size_ret)
static int
eet_data_get_short(void *src, void *src_end, void *dst)
{
short *s, *d;
short tmp;
short *d;
if ((src + sizeof(short)) > src_end) return -1;
s = (short *)src;
memcpy(dst, src, sizeof(short));
d = (short *)dst;
/* alignment fixup */
if ((int)s & (sizeof(short) - 1))
{
memcpy(&tmp, s, sizeof(short));
s = &tmp;
}
*d = *s;
CONV16(*d);
return sizeof(short);
}
@ -898,19 +890,11 @@ eet_data_put_short(void *src, int *size_ret)
static int
eet_data_get_int(void *src, void *src_end, void *dst)
{
int *s, *d;
int tmp;
int *d;
if ((src + sizeof(int)) > src_end) return -1;
s = (int *)src;
memcpy(dst, src, sizeof(int));
d = (int *)dst;
/* alignment fixup */
if ((int)s & (sizeof(int) - 1))
{
memcpy(&tmp, s, sizeof(int));
s = &tmp;
}
*d = *s;
CONV32(*d);
return sizeof(int);
}
@ -933,19 +917,11 @@ eet_data_put_int(void *src, int *size_ret)
static int
eet_data_get_long_long(void *src, void *src_end, void *dst)
{
long long *s, *d;
long long tmp;
long long *d;
if ((src + sizeof(long long)) > src_end) return -1;
s = (long long *)src;
memcpy(dst, src, sizeof(long long));
d = (long long *)dst;
/* alignment fixup */
if ((int)s & (sizeof(long long) - 1))
{
memcpy(&tmp, s, sizeof(long long));
s = &tmp;
}
*d = *s;
CONV64(*d);
return sizeof(long long);
}
@ -1696,7 +1672,7 @@ eet_data_descriptor_decode(Eet_Data_Descriptor *edd,
{
int ret;
void *data_ret;
if ((ede->type >= EET_T_CHAR) &&
(ede->type <= EET_T_STRING))
{

View File

@ -372,7 +372,7 @@ eet_open(char *file, Eet_File_Mode mode)
return NULL;
}
/* get magic no */
i1 = *((int *)(buf + 0));
memcpy(&i1, buf + 0, sizeof(int));
i2 = ntohl(i1);
if (i2 != EET_MAGIC_FILE)
{
@ -380,10 +380,10 @@ eet_open(char *file, Eet_File_Mode mode)
return NULL;
}
/* get entries count and byte count */
i1 = *((int *)(buf + 4));
memcpy(&i1, buf + 4, sizeof(int));
i2 = ntohl(i1);
num_entries = (int)i2;
i1 = *((int *)(buf + 8));
memcpy(&i1, buf + 8, sizeof(int));
i2 = ntohl(i1);
byte_entries = (int)i2;
/* we cant have <= 0 values here - invalid */
@ -463,19 +463,19 @@ eet_open(char *file, Eet_File_Mode mode)
return NULL;
}
/* get entrie header */
i1 = *((int *)(p + 0));
memcpy(&i1, p + 0, sizeof(int));
i2 = ntohl(i1);
offset = (int)i2;
i1 = *((int *)(p + 4));
memcpy(&i1, p + 4, sizeof(int));
i2 = ntohl(i1);
flags = (int)i2;
i1 = *((int *)(p + 8));
memcpy(&i1, p + 8, sizeof(int));
i2 = ntohl(i1);
size = (int)i2;
i1 = *((int *)(p + 12));
memcpy(&i1, p + 12, sizeof(int));
i2 = ntohl(i1);
data_size = (int)i2;
i1 = *((int *)(p + 16));
memcpy(&i1, p + 16, sizeof(int));
i2 = ntohl(i1);
name_size = (int)i2;
/* invalid size */
@ -510,7 +510,6 @@ eet_open(char *file, Eet_File_Mode mode)
/* copy name in and terminate it */
strncpy(name, p + 20, name_size);
name[name_size] = 0;
/* get hask bucket it should go in */
hash = eet_hash_gen(name, ef->header->directory->size);
/* resize hask bucket */