forked from enlightenment/efl
1. stop doing unaligned memory accesses - htons() on a pointer to some
arbitrary point... 2. use int not long - long will be 64bit on 64bit platforms, but 32bit almost everywhere (yes in theory it may not - but in practice, it won't - long though will vary). SVN revision: 34211
This commit is contained in:
parent
4d54b4aaa6
commit
ec51ff71c6
|
@ -921,6 +921,8 @@ efreet_mime_shared_mimeinfo_magic_parse(char *data, int size)
|
|||
}
|
||||
else
|
||||
{
|
||||
short tshort;
|
||||
|
||||
if (!mime) continue;
|
||||
if (!entry)
|
||||
{
|
||||
|
@ -952,7 +954,9 @@ efreet_mime_shared_mimeinfo_magic_parse(char *data, int size)
|
|||
|
||||
case '=':
|
||||
ptr++;
|
||||
entry->value_len = ntohs(*((short*)(ptr)));
|
||||
|
||||
memcpy(&tshort, ptr, sizeof(short));
|
||||
entry->value_len = ntohs(tshort);
|
||||
ptr += 2;
|
||||
|
||||
entry->value = NEW(1, entry->value_len);
|
||||
|
@ -1002,12 +1006,12 @@ efreet_mime_shared_mimeinfo_magic_parse(char *data, int size)
|
|||
}
|
||||
else if (entry->word_size == 4)
|
||||
{
|
||||
((long*)entry->value)[j] =
|
||||
ntohl(((long*)entry->value)[j]);
|
||||
((int*)entry->value)[j] =
|
||||
ntohl(((int*)entry->value)[j]);
|
||||
|
||||
if (entry->mask)
|
||||
((long*)entry->mask)[j] =
|
||||
ntohl(((long*)entry->mask)[j]);
|
||||
((int*)entry->mask)[j] =
|
||||
ntohl(((int*)entry->mask)[j]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue