diff options
author | Dominik Kuhlen <kinimod@users.sourceforge.net> | 2003-06-01 19:38:21 +0000 |
---|---|---|
committer | Dominik Kuhlen <kinimod@users.sourceforge.net> | 2003-06-01 19:38:21 +0000 |
commit | e5c98a5d21470ff77261522d8da9317d13d44f1a (patch) | |
tree | 393293d7fda094246ec45b7dd70ee8375f451af5 /camlibs/sx330z | |
parent | 4173d08d2b6a114f80ef869633f059366e648b4d (diff) | |
download | libgphoto2-e5c98a5d21470ff77261522d8da9317d13d44f1a.tar.gz |
TOC Page filler endianess problem
git-svn-id: https://svn.code.sf.net/p/gphoto/code/trunk/libgphoto2@6459 67ed7778-7388-44ab-90cf-0a291f65f57c
Diffstat (limited to 'camlibs/sx330z')
-rw-r--r-- | camlibs/sx330z/sx330z.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/camlibs/sx330z/sx330z.c b/camlibs/sx330z/sx330z.c index 12e29f082..3eb789594 100644 --- a/camlibs/sx330z/sx330z.c +++ b/camlibs/sx330z/sx330z.c @@ -63,15 +63,16 @@ int sx330z_fill_toc_page(int8_t *buf,struct traveler_toc_page *toc) { int cnt; - toc->data0=*((uint32_t*)buf); buf+=4; - toc->data1=*((uint32_t*)buf); buf+=4; - toc->always1=*((uint16_t*)buf); buf+=2; - toc->numEntries=*((uint16_t*)buf); buf+=2; - for (cnt=0;cnt<25;cnt++) + toc->data0 = *((uint32_t*)buf); buf += 4; + toc->data1 = *((uint32_t*)buf); buf += 4; + toc->always1 = *((uint16_t*)buf); buf += 2; +// toc->numEntries=*((uint16_t*)buf); buf+=2; + toc->numEntries = buf[0] + buf[1] << 8; buf += 2; + for (cnt = 0;cnt < 25;cnt++) { - memcpy(toc->entries[cnt].name,buf,12); buf+=12; - toc->entries[cnt].time=*((uint32_t*)buf); buf+=4; - toc->entries[cnt].size=*((uint32_t*)buf); buf+=4; + memcpy(toc->entries[cnt].name,buf,12); buf += 12; + toc->entries[cnt].time = *((uint32_t*)buf); buf += 4; + toc->entries[cnt].size = *((uint32_t*)buf); buf += 4; } return(GP_OK); } /* sx330z_fill_toc_page */ |