diff --git a/legacy/eet/src/lib/Eet_private.h b/legacy/eet/src/lib/Eet_private.h index ddd811e8b3..7c9c368b71 100644 --- a/legacy/eet/src/lib/Eet_private.h +++ b/legacy/eet/src/lib/Eet_private.h @@ -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 diff --git a/legacy/eet/src/lib/eet_data.c b/legacy/eet/src/lib/eet_data.c index 8943310efd..874716c18d 100644 --- a/legacy/eet/src/lib/eet_data.c +++ b/legacy/eet/src/lib/eet_data.c @@ -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)) { diff --git a/legacy/eet/src/lib/eet_lib.c b/legacy/eet/src/lib/eet_lib.c index 740f89b623..e6c2067f2a 100644 --- a/legacy/eet/src/lib/eet_lib.c +++ b/legacy/eet/src/lib/eet_lib.c @@ -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 */