diff options
author | Amaury Pouly <amaury.pouly@gmail.com> | 2017-01-16 00:10:38 +0100 |
---|---|---|
committer | Gerrit Rockbox <gerrit@rockbox.org> | 2017-02-04 17:24:47 +0100 |
commit | d7871914acd2ed77f43344e36e08944524a67d9e (patch) | |
tree | 7bcef243d9b53c3703c305b8a5f9f8a8488eabfb | |
parent | 1245c5fe61f6ca8e1980a33a8b8f7ea4322829fd (diff) | |
download | rockbox-d7871914acd2ed77f43344e36e08944524a67d9e.tar.gz rockbox-d7871914acd2ed77f43344e36e08944524a67d9e.zip |
Fix dangerous casts
On Windows 64-bit, the size of long is 32-bit, thus any pointer to long cast is
not valid. In any case, one should use intptr_t and ptrdiff_t when casting
to integers. This commit attempts to fix all instances reported by GCC.
When relevant, I replaced code by the macros PTR_ADD, ALIGN_UP from system.h
Change-Id: I2273b0e8465d3c4689824717ed5afa5ed238a2dc
27 files changed, 69 insertions, 66 deletions
diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c index 63f3f81140..5409861cc7 100644 --- a/apps/gui/skin_engine/skin_parser.c +++ b/apps/gui/skin_engine/skin_parser.c | |||
@@ -2493,7 +2493,7 @@ bool skin_data_load(enum screen_type screen, struct wps_data *wps_data, | |||
2493 | skin_buffer = wps_buffer; | 2493 | skin_buffer = wps_buffer; |
2494 | wps_buffer = (char*)buf; | 2494 | wps_buffer = (char*)buf; |
2495 | } | 2495 | } |
2496 | skin_buffer = (void *)(((unsigned long)skin_buffer + 3) & ~3); | 2496 | skin_buffer = ALIGN_UP(skin_buffer, 4); /* align on 4-byte boundary */ |
2497 | buffersize -= 3; | 2497 | buffersize -= 3; |
2498 | #ifdef HAVE_BACKDROP_IMAGE | 2498 | #ifdef HAVE_BACKDROP_IMAGE |
2499 | backdrop_filename = "-"; | 2499 | backdrop_filename = "-"; |
diff --git a/apps/misc.c b/apps/misc.c index e460eb542c..3fdcab85e6 100644 --- a/apps/misc.c +++ b/apps/misc.c | |||
@@ -215,7 +215,7 @@ int fast_readline(int fd, char *buf, int buf_size, void *parameters, | |||
215 | count++; | 215 | count++; |
216 | if (next) | 216 | if (next) |
217 | { | 217 | { |
218 | pos = buf_size - ((long)next - (long)buf) - 1; | 218 | pos = buf_size - ((intptr_t)next - (intptr_t)buf) - 1; |
219 | memmove(buf, next, pos); | 219 | memmove(buf, next, pos); |
220 | } | 220 | } |
221 | else | 221 | else |
diff --git a/apps/plugins/doom/d_deh.c b/apps/plugins/doom/d_deh.c index abdaeae9ae..1a399e3b49 100644 --- a/apps/plugins/doom/d_deh.c +++ b/apps/plugins/doom/d_deh.c | |||
@@ -2082,7 +2082,7 @@ void deh_procSounds(DEHFILE *fpin, int fpout, char *line) | |||
2082 | S_sfx[indexnum].priority = (int)value; | 2082 | S_sfx[indexnum].priority = (int)value; |
2083 | else | 2083 | else |
2084 | if (!strcasecmp(key,deh_sfxinfo[3])) // Zero 1 | 2084 | if (!strcasecmp(key,deh_sfxinfo[3])) // Zero 1 |
2085 | S_sfx[indexnum].link = (sfxinfo_t *)((long) value); | 2085 | S_sfx[indexnum].link = (sfxinfo_t *)((intptr_t) value); |
2086 | else | 2086 | else |
2087 | if (!strcasecmp(key,deh_sfxinfo[4])) // Zero 2 | 2087 | if (!strcasecmp(key,deh_sfxinfo[4])) // Zero 2 |
2088 | S_sfx[indexnum].pitch = (int)value; | 2088 | S_sfx[indexnum].pitch = (int)value; |
@@ -2091,7 +2091,7 @@ void deh_procSounds(DEHFILE *fpin, int fpout, char *line) | |||
2091 | S_sfx[indexnum].volume = (int)value; | 2091 | S_sfx[indexnum].volume = (int)value; |
2092 | else | 2092 | else |
2093 | if (!strcasecmp(key,deh_sfxinfo[6])) // Zero 4 | 2093 | if (!strcasecmp(key,deh_sfxinfo[6])) // Zero 4 |
2094 | S_sfx[indexnum].data = (void *) ((long) value); // killough 5/3/98: changed cast | 2094 | S_sfx[indexnum].data = (void *) ((intptr_t) value); // killough 5/3/98: changed cast |
2095 | else | 2095 | else |
2096 | if (!strcasecmp(key,deh_sfxinfo[7])) // Neg. One 1 | 2096 | if (!strcasecmp(key,deh_sfxinfo[7])) // Neg. One 1 |
2097 | S_sfx[indexnum].usefulness = (int)value; | 2097 | S_sfx[indexnum].usefulness = (int)value; |
diff --git a/apps/plugins/doom/d_main.c b/apps/plugins/doom/d_main.c index be45e6a37e..1afeffa502 100644 --- a/apps/plugins/doom/d_main.c +++ b/apps/plugins/doom/d_main.c | |||
@@ -807,7 +807,7 @@ void D_DoomMainSetup(void) | |||
807 | // for statistics driver | 807 | // for statistics driver |
808 | extern void* statcopy; | 808 | extern void* statcopy; |
809 | 809 | ||
810 | statcopy = (void*)(long)atoi(myargv[p+1]); | 810 | statcopy = (void*)(intptr_t)atoi(myargv[p+1]); |
811 | printf ("External statistics registered.\n"); | 811 | printf ("External statistics registered.\n"); |
812 | } | 812 | } |
813 | 813 | ||
diff --git a/apps/plugins/doom/p_saveg.c b/apps/plugins/doom/p_saveg.c index a704bfa83c..891b3b0503 100644 --- a/apps/plugins/doom/p_saveg.c +++ b/apps/plugins/doom/p_saveg.c | |||
@@ -44,7 +44,7 @@ byte *save_p; | |||
44 | 44 | ||
45 | // Pads save_p to a 4-byte boundary | 45 | // Pads save_p to a 4-byte boundary |
46 | // so that the load/save works on SGI&Gecko. | 46 | // so that the load/save works on SGI&Gecko. |
47 | #define PADSAVEP() do { save_p += (4 - ((unsigned long) save_p & 3)) & 3; } while (0) | 47 | #define PADSAVEP() do { save_p += (4 - ((intptr_t) save_p & 3)) & 3; } while (0) |
48 | // | 48 | // |
49 | // P_ArchivePlayers | 49 | // P_ArchivePlayers |
50 | // | 50 | // |
@@ -95,7 +95,7 @@ void P_UnArchivePlayers (void) | |||
95 | for (j=0 ; j<NUMPSPRITES ; j++) | 95 | for (j=0 ; j<NUMPSPRITES ; j++) |
96 | if (players[i]. psprites[j].state) | 96 | if (players[i]. psprites[j].state) |
97 | players[i]. psprites[j].state = | 97 | players[i]. psprites[j].state = |
98 | &states[ (unsigned long)players[i].psprites[j].state ]; | 98 | &states[ (intptr_t)players[i].psprites[j].state ]; |
99 | } | 99 | } |
100 | } | 100 | } |
101 | 101 | ||
@@ -270,7 +270,7 @@ void P_ThinkerToIndex(void) | |||
270 | number_of_thinkers = 0; | 270 | number_of_thinkers = 0; |
271 | for (th = thinkercap.next ; th != &thinkercap ; th=th->next) | 271 | for (th = thinkercap.next ; th != &thinkercap ; th=th->next) |
272 | if (th->function == P_MobjThinker) | 272 | if (th->function == P_MobjThinker) |
273 | th->prev = (thinker_t *)(long)(++number_of_thinkers); | 273 | th->prev = (thinker_t *)(intptr_t)(++number_of_thinkers); |
274 | } | 274 | } |
275 | 275 | ||
276 | // phares 9/13/98: Moved this code outside of P_ArchiveThinkers so the | 276 | // phares 9/13/98: Moved this code outside of P_ArchiveThinkers so the |
@@ -448,10 +448,10 @@ void P_UnArchiveThinkers (void) | |||
448 | PADSAVEP(); | 448 | PADSAVEP(); |
449 | memcpy (mobj, save_p, sizeof(mobj_t)); | 449 | memcpy (mobj, save_p, sizeof(mobj_t)); |
450 | save_p += sizeof(mobj_t); | 450 | save_p += sizeof(mobj_t); |
451 | mobj->state = states + (unsigned long) mobj->state; | 451 | mobj->state = states + (intptr_t) mobj->state; |
452 | 452 | ||
453 | if (mobj->player) | 453 | if (mobj->player) |
454 | (mobj->player = &players[(unsigned long) mobj->player - 1]) -> mo = mobj; | 454 | (mobj->player = &players[(intptr_t) mobj->player - 1]) -> mo = mobj; |
455 | 455 | ||
456 | P_SetThingPosition (mobj); | 456 | P_SetThingPosition (mobj); |
457 | mobj->info = &mobjinfo[mobj->type]; | 457 | mobj->info = &mobjinfo[mobj->type]; |
@@ -770,7 +770,7 @@ void P_UnArchiveSpecials (void) | |||
770 | ceiling_t *ceiling = Z_Malloc (sizeof(*ceiling), PU_LEVEL, NULL); | 770 | ceiling_t *ceiling = Z_Malloc (sizeof(*ceiling), PU_LEVEL, NULL); |
771 | memcpy (ceiling, save_p, sizeof(*ceiling)); | 771 | memcpy (ceiling, save_p, sizeof(*ceiling)); |
772 | save_p += sizeof(*ceiling); | 772 | save_p += sizeof(*ceiling); |
773 | ceiling->sector = §ors[(unsigned long)ceiling->sector]; | 773 | ceiling->sector = §ors[(intptr_t)ceiling->sector]; |
774 | ceiling->sector->ceilingdata = ceiling; //jff 2/22/98 | 774 | ceiling->sector->ceilingdata = ceiling; //jff 2/22/98 |
775 | 775 | ||
776 | if (ceiling->thinker.function) | 776 | if (ceiling->thinker.function) |
@@ -787,10 +787,10 @@ void P_UnArchiveSpecials (void) | |||
787 | vldoor_t *door = Z_Malloc (sizeof(*door), PU_LEVEL, NULL); | 787 | vldoor_t *door = Z_Malloc (sizeof(*door), PU_LEVEL, NULL); |
788 | memcpy (door, save_p, sizeof(*door)); | 788 | memcpy (door, save_p, sizeof(*door)); |
789 | save_p += sizeof(*door); | 789 | save_p += sizeof(*door); |
790 | door->sector = §ors[(unsigned long)door->sector]; | 790 | door->sector = §ors[(intptr_t)door->sector]; |
791 | 791 | ||
792 | //jff 1/31/98 unarchive line remembered by door as well | 792 | //jff 1/31/98 unarchive line remembered by door as well |
793 | door->line = (long)door->line!=-1? &lines[(unsigned long)door->line] : NULL; | 793 | door->line = (intptr_t)door->line!=-1? &lines[(intptr_t)door->line] : NULL; |
794 | 794 | ||
795 | door->sector->ceilingdata = door; //jff 2/22/98 | 795 | door->sector->ceilingdata = door; //jff 2/22/98 |
796 | door->thinker.function = T_VerticalDoor; | 796 | door->thinker.function = T_VerticalDoor; |
@@ -804,7 +804,7 @@ void P_UnArchiveSpecials (void) | |||
804 | floormove_t *floor = Z_Malloc (sizeof(*floor), PU_LEVEL, NULL); | 804 | floormove_t *floor = Z_Malloc (sizeof(*floor), PU_LEVEL, NULL); |
805 | memcpy (floor, save_p, sizeof(*floor)); | 805 | memcpy (floor, save_p, sizeof(*floor)); |
806 | save_p += sizeof(*floor); | 806 | save_p += sizeof(*floor); |
807 | floor->sector = §ors[(unsigned long)floor->sector]; | 807 | floor->sector = §ors[(intptr_t)floor->sector]; |
808 | floor->sector->floordata = floor; //jff 2/22/98 | 808 | floor->sector->floordata = floor; //jff 2/22/98 |
809 | floor->thinker.function = T_MoveFloor; | 809 | floor->thinker.function = T_MoveFloor; |
810 | P_AddThinker (&floor->thinker); | 810 | P_AddThinker (&floor->thinker); |
@@ -817,7 +817,7 @@ void P_UnArchiveSpecials (void) | |||
817 | plat_t *plat = Z_Malloc (sizeof(*plat), PU_LEVEL, NULL); | 817 | plat_t *plat = Z_Malloc (sizeof(*plat), PU_LEVEL, NULL); |
818 | memcpy (plat, save_p, sizeof(*plat)); | 818 | memcpy (plat, save_p, sizeof(*plat)); |
819 | save_p += sizeof(*plat); | 819 | save_p += sizeof(*plat); |
820 | plat->sector = §ors[(unsigned long)plat->sector]; | 820 | plat->sector = §ors[(intptr_t)plat->sector]; |
821 | plat->sector->floordata = plat; //jff 2/22/98 | 821 | plat->sector->floordata = plat; //jff 2/22/98 |
822 | 822 | ||
823 | if (plat->thinker.function) | 823 | if (plat->thinker.function) |
@@ -834,7 +834,7 @@ void P_UnArchiveSpecials (void) | |||
834 | lightflash_t *flash = Z_Malloc (sizeof(*flash), PU_LEVEL, NULL); | 834 | lightflash_t *flash = Z_Malloc (sizeof(*flash), PU_LEVEL, NULL); |
835 | memcpy (flash, save_p, sizeof(*flash)); | 835 | memcpy (flash, save_p, sizeof(*flash)); |
836 | save_p += sizeof(*flash); | 836 | save_p += sizeof(*flash); |
837 | flash->sector = §ors[(unsigned long)flash->sector]; | 837 | flash->sector = §ors[(intptr_t)flash->sector]; |
838 | flash->thinker.function = T_LightFlash; | 838 | flash->thinker.function = T_LightFlash; |
839 | P_AddThinker (&flash->thinker); | 839 | P_AddThinker (&flash->thinker); |
840 | break; | 840 | break; |
@@ -846,7 +846,7 @@ void P_UnArchiveSpecials (void) | |||
846 | strobe_t *strobe = Z_Malloc (sizeof(*strobe), PU_LEVEL, NULL); | 846 | strobe_t *strobe = Z_Malloc (sizeof(*strobe), PU_LEVEL, NULL); |
847 | memcpy (strobe, save_p, sizeof(*strobe)); | 847 | memcpy (strobe, save_p, sizeof(*strobe)); |
848 | save_p += sizeof(*strobe); | 848 | save_p += sizeof(*strobe); |
849 | strobe->sector = §ors[(unsigned long)strobe->sector]; | 849 | strobe->sector = §ors[(intptr_t)strobe->sector]; |
850 | strobe->thinker.function = T_StrobeFlash; | 850 | strobe->thinker.function = T_StrobeFlash; |
851 | P_AddThinker (&strobe->thinker); | 851 | P_AddThinker (&strobe->thinker); |
852 | break; | 852 | break; |
@@ -858,7 +858,7 @@ void P_UnArchiveSpecials (void) | |||
858 | glow_t *glow = Z_Malloc (sizeof(*glow), PU_LEVEL, NULL); | 858 | glow_t *glow = Z_Malloc (sizeof(*glow), PU_LEVEL, NULL); |
859 | memcpy (glow, save_p, sizeof(*glow)); | 859 | memcpy (glow, save_p, sizeof(*glow)); |
860 | save_p += sizeof(*glow); | 860 | save_p += sizeof(*glow); |
861 | glow->sector = §ors[(unsigned long)glow->sector]; | 861 | glow->sector = §ors[(intptr_t)glow->sector]; |
862 | glow->thinker.function = T_Glow; | 862 | glow->thinker.function = T_Glow; |
863 | P_AddThinker (&glow->thinker); | 863 | P_AddThinker (&glow->thinker); |
864 | break; | 864 | break; |
@@ -870,7 +870,7 @@ void P_UnArchiveSpecials (void) | |||
870 | fireflicker_t *flicker = Z_Malloc (sizeof(*flicker), PU_LEVEL, NULL); | 870 | fireflicker_t *flicker = Z_Malloc (sizeof(*flicker), PU_LEVEL, NULL); |
871 | memcpy (flicker, save_p, sizeof(*flicker)); | 871 | memcpy (flicker, save_p, sizeof(*flicker)); |
872 | save_p += sizeof(*flicker); | 872 | save_p += sizeof(*flicker); |
873 | flicker->sector = §ors[(unsigned long)flicker->sector]; | 873 | flicker->sector = §ors[(intptr_t)flicker->sector]; |
874 | flicker->thinker.function = T_FireFlicker; | 874 | flicker->thinker.function = T_FireFlicker; |
875 | P_AddThinker (&flicker->thinker); | 875 | P_AddThinker (&flicker->thinker); |
876 | break; | 876 | break; |
@@ -883,7 +883,7 @@ void P_UnArchiveSpecials (void) | |||
883 | elevator_t *elevator = Z_Malloc (sizeof(*elevator), PU_LEVEL, NULL); | 883 | elevator_t *elevator = Z_Malloc (sizeof(*elevator), PU_LEVEL, NULL); |
884 | memcpy (elevator, save_p, sizeof(*elevator)); | 884 | memcpy (elevator, save_p, sizeof(*elevator)); |
885 | save_p += sizeof(*elevator); | 885 | save_p += sizeof(*elevator); |
886 | elevator->sector = §ors[(unsigned long)elevator->sector]; | 886 | elevator->sector = §ors[(intptr_t)elevator->sector]; |
887 | elevator->sector->floordata = elevator; //jff 2/22/98 | 887 | elevator->sector->floordata = elevator; //jff 2/22/98 |
888 | elevator->sector->ceilingdata = elevator; //jff 2/22/98 | 888 | elevator->sector->ceilingdata = elevator; //jff 2/22/98 |
889 | elevator->thinker.function = T_MoveElevator; | 889 | elevator->thinker.function = T_MoveElevator; |
diff --git a/apps/plugins/doom/z_zone.c b/apps/plugins/doom/z_zone.c index df00d6a9d7..d2b6111b60 100644 --- a/apps/plugins/doom/z_zone.c +++ b/apps/plugins/doom/z_zone.c | |||
@@ -252,8 +252,8 @@ void Z_Init(void) | |||
252 | 252 | ||
253 | // Align on cache boundary | 253 | // Align on cache boundary |
254 | 254 | ||
255 | zone = (memblock_t *) ((unsigned long)zonebase + CACHE_ALIGN - | 255 | zone = (memblock_t *) ((intptr_t)zonebase + CACHE_ALIGN - |
256 | ((unsigned long)zonebase & (CACHE_ALIGN-1))); | 256 | ((intptr_t)zonebase & (CACHE_ALIGN-1))); |
257 | 257 | ||
258 | rover = zone; // Rover points to base of zone mem | 258 | rover = zone; // Rover points to base of zone mem |
259 | zone->next = zone->prev = zone; // Single node | 259 | zone->next = zone->prev = zone; // Single node |
diff --git a/apps/plugins/goban/util.c b/apps/plugins/goban/util.c index bb78316346..206606a4bb 100644 --- a/apps/plugins/goban/util.c +++ b/apps/plugins/goban/util.c | |||
@@ -73,7 +73,7 @@ void metadata_summary (void) | |||
73 | void * | 73 | void * |
74 | align_buffer (void *buffer, size_t * buffer_size) | 74 | align_buffer (void *buffer, size_t * buffer_size) |
75 | { | 75 | { |
76 | unsigned int wasted = (-(long) buffer) & 3; | 76 | unsigned int wasted = (-(intptr_t) buffer) & 3; |
77 | 77 | ||
78 | if (!buffer || !buffer_size) | 78 | if (!buffer || !buffer_size) |
79 | { | 79 | { |
@@ -88,7 +88,7 @@ align_buffer (void *buffer, size_t * buffer_size) | |||
88 | 88 | ||
89 | *buffer_size -= wasted; | 89 | *buffer_size -= wasted; |
90 | 90 | ||
91 | return (void *) (((char *) buffer) + wasted); | 91 | return PTR_ADD(buffer, wasted); |
92 | } | 92 | } |
93 | 93 | ||
94 | 94 | ||
diff --git a/apps/plugins/lib/simple_viewer.c b/apps/plugins/lib/simple_viewer.c index 06cc9c1a71..6927d84a96 100644 --- a/apps/plugins/lib/simple_viewer.c +++ b/apps/plugins/lib/simple_viewer.c | |||
@@ -69,7 +69,7 @@ static const char* get_next_line(const char *text, struct view_info *info) | |||
69 | w = 1; | 69 | w = 1; |
70 | #else | 70 | #else |
71 | unsigned short ch; | 71 | unsigned short ch; |
72 | n = ((long)rb->utf8decode(ptr, &ch) - (long)ptr); | 72 | n = ((intptr_t)rb->utf8decode(ptr, &ch) - (intptr_t)ptr); |
73 | if (rb->is_diacritic(ch, NULL)) | 73 | if (rb->is_diacritic(ch, NULL)) |
74 | w = 0; | 74 | w = 0; |
75 | else | 75 | else |
diff --git a/apps/plugins/lib/strncpy.c b/apps/plugins/lib/strncpy.c index 1b552ee15c..9ad3594287 100644 --- a/apps/plugins/lib/strncpy.c +++ b/apps/plugins/lib/strncpy.c | |||
@@ -41,13 +41,14 @@ QUICKREF | |||
41 | #include <limits.h> | 41 | #include <limits.h> |
42 | #include "plugin.h" | 42 | #include "plugin.h" |
43 | #include "_ansi.h" | 43 | #include "_ansi.h" |
44 | #include <stdint.h> | ||
44 | 45 | ||
45 | /*SUPPRESS 560*/ | 46 | /*SUPPRESS 560*/ |
46 | /*SUPPRESS 530*/ | 47 | /*SUPPRESS 530*/ |
47 | 48 | ||
48 | /* Nonzero if either X or Y is not aligned on a "long" boundary. */ | 49 | /* Nonzero if either X or Y is not aligned on a "long" boundary. */ |
49 | #define ROCKBOX_UNALIGNED(X, Y) \ | 50 | #define ROCKBOX_UNALIGNED(X, Y) \ |
50 | (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) | 51 | (((uintptr_t)X & (sizeof (long) - 1)) | ((uintptr_t)Y & (sizeof (long) - 1))) |
51 | 52 | ||
52 | #if LONG_MAX == 2147483647L | 53 | #if LONG_MAX == 2147483647L |
53 | #define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080) | 54 | #define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080) |
diff --git a/apps/plugins/lrcplayer.c b/apps/plugins/lrcplayer.c index 392e78e77f..c7f36968a1 100644 --- a/apps/plugins/lrcplayer.c +++ b/apps/plugins/lrcplayer.c | |||
@@ -545,7 +545,7 @@ static struct lrc_brpos *calc_brpos(struct lrc_line *lrc_line, int i) | |||
545 | c = rb->utf8seek(cr.str, 1); | 545 | c = rb->utf8seek(cr.str, 1); |
546 | w = 1; | 546 | w = 1; |
547 | #else | 547 | #else |
548 | c = ((long)rb->utf8decode(cr.str, &ch) - (long)cr.str); | 548 | c = ((intptr_t)rb->utf8decode(cr.str, &ch) - (intptr_t)cr.str); |
549 | if (rb->is_diacritic(ch, NULL)) | 549 | if (rb->is_diacritic(ch, NULL)) |
550 | w = 0; | 550 | w = 0; |
551 | else | 551 | else |
@@ -885,7 +885,7 @@ static bool parse_lrc_line(char *line, off_t file_offset) | |||
885 | lrc_line->time_start = (time/10)*10; | 885 | lrc_line->time_start = (time/10)*10; |
886 | lrc_line->old_time_start = lrc_line->time_start; | 886 | lrc_line->old_time_start = lrc_line->time_start; |
887 | add_lrc_line(lrc_line, NULL); | 887 | add_lrc_line(lrc_line, NULL); |
888 | file_offset += (long)tagend - (long)str; | 888 | file_offset += (intptr_t)tagend - (intptr_t)str; |
889 | str = tagend; | 889 | str = tagend; |
890 | } | 890 | } |
891 | if (!first_lrc_line) | 891 | if (!first_lrc_line) |
@@ -908,7 +908,7 @@ static bool parse_lrc_line(char *line, off_t file_offset) | |||
908 | if (!tagend) break; | 908 | if (!tagend) break; |
909 | *tagend = 0; | 909 | *tagend = 0; |
910 | time = get_time_value(tagstart+1, false, | 910 | time = get_time_value(tagstart+1, false, |
911 | file_offset + ((long)tagstart - (long)str)); | 911 | file_offset + ((intptr_t)tagstart - (intptr_t)str)); |
912 | *tagend++ = '>'; | 912 | *tagend++ = '>'; |
913 | if (time < 0) | 913 | if (time < 0) |
914 | { | 914 | { |
@@ -923,7 +923,7 @@ static bool parse_lrc_line(char *line, off_t file_offset) | |||
923 | return false; | 923 | return false; |
924 | nword++; | 924 | nword++; |
925 | } | 925 | } |
926 | file_offset += (long)tagend - (long)str; | 926 | file_offset += (intptr_t)tagend - (intptr_t)str; |
927 | tagstart = str = tagend; | 927 | tagstart = str = tagend; |
928 | time_start = time; | 928 | time_start = time; |
929 | } | 929 | } |
@@ -1159,7 +1159,7 @@ static int unsynchronize(char* tag, int len, bool *ff_found) | |||
1159 | } | 1159 | } |
1160 | } | 1160 | } |
1161 | if(ff_found) *ff_found = _ff_found; | 1161 | if(ff_found) *ff_found = _ff_found; |
1162 | return (long)wp - (long)tag; | 1162 | return (intptr_t)wp - (intptr_t)tag; |
1163 | } | 1163 | } |
1164 | 1164 | ||
1165 | static int read_unsynched(int fd, void *buf, int len, bool *ff_found) | 1165 | static int read_unsynched(int fd, void *buf, int len, bool *ff_found) |
@@ -1471,7 +1471,7 @@ static void parse_id3v2(int fd) | |||
1471 | utf_decode = rb->utf16BEdecode; | 1471 | utf_decode = rb->utf16BEdecode; |
1472 | } | 1472 | } |
1473 | } | 1473 | } |
1474 | bytesread -= (long)p - (long)tag; | 1474 | bytesread -= (intptr_t)p - (intptr_t)tag; |
1475 | tag = p; | 1475 | tag = p; |
1476 | 1476 | ||
1477 | while ( bytesread > 0 | 1477 | while ( bytesread > 0 |
@@ -1529,7 +1529,7 @@ static void parse_id3v2(int fd) | |||
1529 | lrc_line->old_time_start = -1; | 1529 | lrc_line->old_time_start = -1; |
1530 | if(is_crlf) p += chsiz; | 1530 | if(is_crlf) p += chsiz; |
1531 | } | 1531 | } |
1532 | bytesread -= (long)p - (long)tag; | 1532 | bytesread -= (intptr_t)p - (intptr_t)tag; |
1533 | tag = p; | 1533 | tag = p; |
1534 | if(!add_lrc_line(lrc_line, utf8line)) | 1534 | if(!add_lrc_line(lrc_line, utf8line)) |
1535 | break; | 1535 | break; |
@@ -2922,7 +2922,7 @@ enum plugin_status plugin_start(const void* parameter) | |||
2922 | #endif | 2922 | #endif |
2923 | 2923 | ||
2924 | lrc_buffer = rb->plugin_get_buffer(&lrc_buffer_size); | 2924 | lrc_buffer = rb->plugin_get_buffer(&lrc_buffer_size); |
2925 | lrc_buffer = (void *)(((long)lrc_buffer+3)&~3); /* 4 bytes aligned */ | 2925 | lrc_buffer = ALIGN_UP(lrc_buffer, 4); /* 4 bytes aligned */ |
2926 | lrc_buffer_size = (lrc_buffer_size - 4)&~3; | 2926 | lrc_buffer_size = (lrc_buffer_size - 4)&~3; |
2927 | 2927 | ||
2928 | reset_current_data(); | 2928 | reset_current_data(); |
diff --git a/apps/plugins/mikmod/mikmod_internals.h b/apps/plugins/mikmod/mikmod_internals.h index acd514ad39..78d7b52045 100644 --- a/apps/plugins/mikmod/mikmod_internals.h +++ b/apps/plugins/mikmod/mikmod_internals.h | |||
@@ -703,7 +703,7 @@ extern int Voice_Stopped_internal(SBYTE); | |||
703 | 703 | ||
704 | /*========== SIMD mixing helper functions =============*/ | 704 | /*========== SIMD mixing helper functions =============*/ |
705 | 705 | ||
706 | #define IS_ALIGNED_16(ptr) (!(((int)(ptr)) & 15)) | 706 | #define IS_ALIGNED_16(ptr) (!(((intptr_t)(ptr)) & 15)) |
707 | 707 | ||
708 | /* Altivec helper function */ | 708 | /* Altivec helper function */ |
709 | #if defined HAVE_ALTIVEC | 709 | #if defined HAVE_ALTIVEC |
diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c index b5e982d208..b476fa11b4 100644 --- a/apps/plugins/solitaire.c +++ b/apps/plugins/solitaire.c | |||
@@ -1547,7 +1547,7 @@ static int load_game( void ) | |||
1547 | return -1; | 1547 | return -1; |
1548 | 1548 | ||
1549 | retval = 0; /* Assume good case */ | 1549 | retval = 0; /* Assume good case */ |
1550 | if( ( rb->lseek( fd, -sizeof( int ), SEEK_END ) == -((ssize_t)sizeof( int ))-1 ) | 1550 | if( ( rb->lseek( fd, -(off_t)sizeof( int ), SEEK_END ) == -((ssize_t)sizeof( int ))-1 ) |
1551 | || ( rb->read( fd, &checksum, sizeof( int ) ) < ((ssize_t)sizeof( int )) ) | 1551 | || ( rb->read( fd, &checksum, sizeof( int ) ) < ((ssize_t)sizeof( int )) ) |
1552 | || ( rb->lseek( fd, 0, SEEK_SET ) == -1 ) | 1552 | || ( rb->lseek( fd, 0, SEEK_SET ) == -1 ) |
1553 | || save_read( fd, &cur_card, sizeof( int ), &checksum ) | 1553 | || save_read( fd, &cur_card, sizeof( int ), &checksum ) |
diff --git a/apps/plugins/zxbox/snapshot.c b/apps/plugins/zxbox/snapshot.c index 468f46667e..74845bac8e 100644 --- a/apps/plugins/zxbox/snapshot.c +++ b/apps/plugins/zxbox/snapshot.c | |||
@@ -362,7 +362,7 @@ static void read_compressed_data(SNFILE *fp, byte *start, unsigned size, | |||
362 | GET_DATA(ch); | 362 | GET_DATA(ch); |
363 | if(p + times > end) { | 363 | if(p + times > end) { |
364 | put_msg("Warning: Repeat parameter too large in snapshot"); | 364 | put_msg("Warning: Repeat parameter too large in snapshot"); |
365 | times = (int) ((long) end - (long) p); | 365 | times = (int) ((intptr_t) end - (intptr_t) p); |
366 | } | 366 | } |
367 | for(j = 0; j < times; j++) *p++ = ch; | 367 | for(j = 0; j < times; j++) *p++ = ch; |
368 | } | 368 | } |
diff --git a/apps/plugins/zxbox/tapefile.c b/apps/plugins/zxbox/tapefile.c index b030f8dab9..054cae1aba 100644 --- a/apps/plugins/zxbox/tapefile.c +++ b/apps/plugins/zxbox/tapefile.c | |||
@@ -216,7 +216,7 @@ static struct tzxblock tzxb[NUMBLOCKID] = { | |||
216 | }; | 216 | }; |
217 | 217 | ||
218 | 218 | ||
219 | #define PTRDIFF(pe, ps) ((int) (((long) (pe) - (long) (ps)) / sizeof(*pe))) | 219 | #define PTRDIFF(pe, ps) pe - ps |
220 | 220 | ||
221 | static char tzxheader[] = {'Z','X','T','a','p','e','!',0x1A}; | 221 | static char tzxheader[] = {'Z','X','T','a','p','e','!',0x1A}; |
222 | 222 | ||
diff --git a/apps/plugins/zxbox/z80.c b/apps/plugins/zxbox/z80.c index f6f1de7468..683584f471 100644 --- a/apps/plugins/zxbox/z80.c +++ b/apps/plugins/zxbox/z80.c | |||
@@ -48,7 +48,7 @@ static byte *a64kmalloc(int num64ksegs) | |||
48 | /*exit(1);*/ | 48 | /*exit(1);*/ |
49 | } | 49 | } |
50 | 50 | ||
51 | return (byte *) (( (long) bigmem & ~((long) 0xFFFF)) + 0x10000); | 51 | return (byte *) (( (intptr_t) bigmem & ~((intptr_t) 0xFFFF)) + 0x10000); |
52 | } | 52 | } |
53 | 53 | ||
54 | 54 | ||
diff --git a/apps/recorder/keyboard.c b/apps/recorder/keyboard.c index fed8605714..ceb8de00fb 100644 --- a/apps/recorder/keyboard.c +++ b/apps/recorder/keyboard.c | |||
@@ -255,7 +255,7 @@ static void kbd_inschar(struct edit_state *state, unsigned short ch) | |||
255 | 255 | ||
256 | len = strlen(state->text); | 256 | len = strlen(state->text); |
257 | utf8 = utf8encode(ch, tmp); | 257 | utf8 = utf8encode(ch, tmp); |
258 | j = (long)utf8 - (long)tmp; | 258 | j = (intptr_t)utf8 - (intptr_t)tmp; |
259 | 259 | ||
260 | if (len + j < state->buflen) | 260 | if (len + j < state->buflen) |
261 | { | 261 | { |
diff --git a/apps/tagcache.c b/apps/tagcache.c index df252ca0bc..2b3c7212a2 100644 --- a/apps/tagcache.c +++ b/apps/tagcache.c | |||
@@ -930,7 +930,7 @@ inline static bool str_oneof(const char *str, const char *list) | |||
930 | while (*list) | 930 | while (*list) |
931 | { | 931 | { |
932 | sep = strchr(list, '|'); | 932 | sep = strchr(list, '|'); |
933 | l = sep ? (long)sep - (long)list : (int)strlen(list); | 933 | l = sep ? (intptr_t)sep - (intptr_t)list : (int)strlen(list); |
934 | if ((l==len) && !strncasecmp(str, list, len)) | 934 | if ((l==len) && !strncasecmp(str, list, len)) |
935 | return true; | 935 | return true; |
936 | list += sep ? l + 1 : l; | 936 | list += sep ? l + 1 : l; |
@@ -2362,7 +2362,7 @@ static bool build_numeric_indices(struct tagcache_header *h, int tmpfd) | |||
2362 | /* Avoid processing this entry again. */ | 2362 | /* Avoid processing this entry again. */ |
2363 | idx.flag |= FLAG_RESURRECTED; | 2363 | idx.flag |= FLAG_RESURRECTED; |
2364 | 2364 | ||
2365 | lseek(masterfd, -sizeof(struct index_entry), SEEK_CUR); | 2365 | lseek(masterfd, -(off_t)sizeof(struct index_entry), SEEK_CUR); |
2366 | if (ecwrite_index_entry(masterfd, &idx) != sizeof(struct index_entry)) | 2366 | if (ecwrite_index_entry(masterfd, &idx) != sizeof(struct index_entry)) |
2367 | { | 2367 | { |
2368 | logf("masterfd writeback fail #1"); | 2368 | logf("masterfd writeback fail #1"); |
@@ -3432,7 +3432,7 @@ static int parse_changelog_line(int line_n, char *buf, void *parameters) | |||
3432 | struct index_entry idx; | 3432 | struct index_entry idx; |
3433 | char tag_data[TAG_MAXLEN+32]; | 3433 | char tag_data[TAG_MAXLEN+32]; |
3434 | int idx_id; | 3434 | int idx_id; |
3435 | long masterfd = (long)parameters; | 3435 | long masterfd = (long)(intptr_t)parameters; |
3436 | const int import_tags[] = { tag_playcount, tag_rating, tag_playtime, | 3436 | const int import_tags[] = { tag_playcount, tag_rating, tag_playtime, |
3437 | tag_lastplayed, tag_commitid, tag_lastelapsed, | 3437 | tag_lastplayed, tag_commitid, tag_lastelapsed, |
3438 | tag_lastoffset }; | 3438 | tag_lastoffset }; |
@@ -3526,7 +3526,7 @@ bool tagcache_import_changelog(void) | |||
3526 | 3526 | ||
3527 | filenametag_fd = open_tag_fd(&tch, tag_filename, false); | 3527 | filenametag_fd = open_tag_fd(&tch, tag_filename, false); |
3528 | 3528 | ||
3529 | fast_readline(clfd, buf, sizeof buf, (long *)masterfd, | 3529 | fast_readline(clfd, buf, sizeof buf, (void *)(intptr_t)masterfd, |
3530 | parse_changelog_line); | 3530 | parse_changelog_line); |
3531 | 3531 | ||
3532 | close(clfd); | 3532 | close(clfd); |
@@ -3665,7 +3665,7 @@ static bool delete_entry(long idx_id) | |||
3665 | } | 3665 | } |
3666 | 3666 | ||
3667 | myidx.flag |= FLAG_DELETED; | 3667 | myidx.flag |= FLAG_DELETED; |
3668 | lseek(masterfd, -sizeof(struct index_entry), SEEK_CUR); | 3668 | lseek(masterfd, -(off_t)sizeof(struct index_entry), SEEK_CUR); |
3669 | if (ecwrite_index_entry(masterfd, &myidx) != sizeof(struct index_entry)) | 3669 | if (ecwrite_index_entry(masterfd, &myidx) != sizeof(struct index_entry)) |
3670 | { | 3670 | { |
3671 | logf("delete_entry(): write_error #1"); | 3671 | logf("delete_entry(): write_error #1"); |
diff --git a/firmware/asm/memset16.c b/firmware/asm/memset16.c index db71d86fcc..12f3388a8d 100644 --- a/firmware/asm/memset16.c +++ b/firmware/asm/memset16.c | |||
@@ -20,9 +20,10 @@ | |||
20 | ****************************************************************************/ | 20 | ****************************************************************************/ |
21 | 21 | ||
22 | #include "string-extra.h" /* memset16() */ | 22 | #include "string-extra.h" /* memset16() */ |
23 | #include <stdint.h> | ||
23 | 24 | ||
24 | #define LBLOCKSIZE (sizeof(long)/2) | 25 | #define LBLOCKSIZE (sizeof(long)/2) |
25 | #define ROCKBOX_UNALIGNED(X) ((long)X & (sizeof(long) - 1)) | 26 | #define ROCKBOX_UNALIGNED(X) ((uintptr_t)X & (sizeof(long) - 1)) |
26 | #define TOO_SMALL(LEN) ((LEN) < LBLOCKSIZE) | 27 | #define TOO_SMALL(LEN) ((LEN) < LBLOCKSIZE) |
27 | 28 | ||
28 | void memset16(void *dst, int val, size_t len) | 29 | void memset16(void *dst, int val, size_t len) |
diff --git a/firmware/drivers/lcd-16bit-common.c b/firmware/drivers/lcd-16bit-common.c index d006b3900a..a7e80c7244 100644 --- a/firmware/drivers/lcd-16bit-common.c +++ b/firmware/drivers/lcd-16bit-common.c | |||
@@ -94,7 +94,7 @@ void lcd_clear_viewport(void) | |||
94 | { | 94 | { |
95 | do | 95 | do |
96 | { | 96 | { |
97 | memcpy(dst, (void *)((long)dst + lcd_backdrop_offset), | 97 | memcpy(dst, PTR_ADD(dst, lcd_backdrop_offset), |
98 | len * sizeof(fb_data)); | 98 | len * sizeof(fb_data)); |
99 | dst += step; | 99 | dst += step; |
100 | } | 100 | } |
@@ -122,7 +122,7 @@ static void ICODE_ATTR clearpixel(fb_data *address) | |||
122 | 122 | ||
123 | static void ICODE_ATTR clearimgpixel(fb_data *address) | 123 | static void ICODE_ATTR clearimgpixel(fb_data *address) |
124 | { | 124 | { |
125 | *address = *(fb_data *)((long)address + lcd_backdrop_offset); | 125 | *address = *PTR_ADD(address, lcd_backdrop_offset); |
126 | } | 126 | } |
127 | 127 | ||
128 | static void ICODE_ATTR flippixel(fb_data *address) | 128 | static void ICODE_ATTR flippixel(fb_data *address) |
@@ -244,7 +244,7 @@ void lcd_fillrect(int x, int y, int width, int height) | |||
244 | break; | 244 | break; |
245 | 245 | ||
246 | case OPT_COPY: | 246 | case OPT_COPY: |
247 | memcpy(dst, (void *)((long)dst + lcd_backdrop_offset), | 247 | memcpy(dst, PTR_ADD(dst, lcd_backdrop_offset), |
248 | len * sizeof(fb_data)); | 248 | len * sizeof(fb_data)); |
249 | break; | 249 | break; |
250 | 250 | ||
@@ -395,7 +395,7 @@ void ICODE_ATTR lcd_mono_bitmap_part(const unsigned char *src, int src_x, | |||
395 | do | 395 | do |
396 | { | 396 | { |
397 | if (!(data & 0x01)) | 397 | if (!(data & 0x01)) |
398 | *dst = *(fb_data *)((long)dst + bo); | 398 | *dst = *PTR_ADD(dst, bo); |
399 | 399 | ||
400 | dst += ROW_INC; | 400 | dst += ROW_INC; |
401 | UPDATE_SRC; | 401 | UPDATE_SRC; |
@@ -435,7 +435,7 @@ void ICODE_ATTR lcd_mono_bitmap_part(const unsigned char *src, int src_x, | |||
435 | do | 435 | do |
436 | { | 436 | { |
437 | *dst = (data & 0x01) ? fg | 437 | *dst = (data & 0x01) ? fg |
438 | : *(fb_data *)((long)dst + bo); | 438 | : *PTR_ADD(dst, bo); |
439 | dst += ROW_INC; | 439 | dst += ROW_INC; |
440 | UPDATE_SRC; | 440 | UPDATE_SRC; |
441 | } | 441 | } |
diff --git a/firmware/drivers/lcd-16bit.c b/firmware/drivers/lcd-16bit.c index 3c99560b6d..b792be4e02 100644 --- a/firmware/drivers/lcd-16bit.c +++ b/firmware/drivers/lcd-16bit.c | |||
@@ -139,7 +139,7 @@ void lcd_hline(int x1, int x2, int y) | |||
139 | break; | 139 | break; |
140 | 140 | ||
141 | case OPT_COPY: | 141 | case OPT_COPY: |
142 | memcpy(dst, (void *)((long)dst + lcd_backdrop_offset), | 142 | memcpy(dst, PTR_ADD(dst, lcd_backdrop_offset), |
143 | width * sizeof(fb_data)); | 143 | width * sizeof(fb_data)); |
144 | break; | 144 | break; |
145 | 145 | ||
diff --git a/firmware/drivers/lcd-color-common.c b/firmware/drivers/lcd-color-common.c index b5b0f58eb3..c8bfd2d6b3 100644 --- a/firmware/drivers/lcd-color-common.c +++ b/firmware/drivers/lcd-color-common.c | |||
@@ -148,7 +148,7 @@ void lcd_set_backdrop(fb_data* backdrop) | |||
148 | lcd_backdrop = backdrop; | 148 | lcd_backdrop = backdrop; |
149 | if (backdrop) | 149 | if (backdrop) |
150 | { | 150 | { |
151 | lcd_backdrop_offset = (long)backdrop - (long)lcd_framebuffer; | 151 | lcd_backdrop_offset = (intptr_t)backdrop - (intptr_t)lcd_framebuffer; |
152 | lcd_fastpixelfuncs = lcd_fastpixelfuncs_backdrop; | 152 | lcd_fastpixelfuncs = lcd_fastpixelfuncs_backdrop; |
153 | } | 153 | } |
154 | else | 154 | else |
diff --git a/firmware/kernel/queue.c b/firmware/kernel/queue.c index 233b53c364..5566604c5d 100644 --- a/firmware/kernel/queue.c +++ b/firmware/kernel/queue.c | |||
@@ -418,7 +418,7 @@ void queue_post(struct event_queue *q, long id, intptr_t data) | |||
418 | wr = q->write++ & QUEUE_LENGTH_MASK; | 418 | wr = q->write++ & QUEUE_LENGTH_MASK; |
419 | 419 | ||
420 | KERNEL_ASSERT((q->write - q->read) <= QUEUE_LENGTH, | 420 | KERNEL_ASSERT((q->write - q->read) <= QUEUE_LENGTH, |
421 | "queue_post ovf q=%08lX", (long)q); | 421 | "queue_post ovf q=%p", q); |
422 | 422 | ||
423 | q->events[wr].id = id; | 423 | q->events[wr].id = id; |
424 | q->events[wr].data = data; | 424 | q->events[wr].data = data; |
@@ -450,7 +450,7 @@ intptr_t queue_send(struct event_queue *q, long id, intptr_t data) | |||
450 | wr = q->write++ & QUEUE_LENGTH_MASK; | 450 | wr = q->write++ & QUEUE_LENGTH_MASK; |
451 | 451 | ||
452 | KERNEL_ASSERT((q->write - q->read) <= QUEUE_LENGTH, | 452 | KERNEL_ASSERT((q->write - q->read) <= QUEUE_LENGTH, |
453 | "queue_send ovf q=%08lX", (long)q); | 453 | "queue_send ovf q=%p", q); |
454 | 454 | ||
455 | q->events[wr].id = id; | 455 | q->events[wr].id = id; |
456 | q->events[wr].data = data; | 456 | q->events[wr].data = data; |
diff --git a/firmware/target/hosted/filesystem-win32.c b/firmware/target/hosted/filesystem-win32.c index fad9b16e36..be95134cc9 100644 --- a/firmware/target/hosted/filesystem-win32.c +++ b/firmware/target/hosted/filesystem-win32.c | |||
@@ -251,7 +251,7 @@ int os_opendirfd(const char *osdirname) | |||
251 | else | 251 | else |
252 | { | 252 | { |
253 | /* Convert OS handle to fd; the fd now owns it */ | 253 | /* Convert OS handle to fd; the fd now owns it */ |
254 | int osfd = _open_osfhandle((long)h, O_RDONLY); | 254 | int osfd = _open_osfhandle((intptr_t)h, O_RDONLY); |
255 | if (osfd >= 0) | 255 | if (osfd >= 0) |
256 | return osfd; | 256 | return osfd; |
257 | } | 257 | } |
diff --git a/lib/rbcodec/codecs/liba52/bitstream.c b/lib/rbcodec/codecs/liba52/bitstream.c index 155368f1ed..69dd1dc5b7 100644 --- a/lib/rbcodec/codecs/liba52/bitstream.c +++ b/lib/rbcodec/codecs/liba52/bitstream.c | |||
@@ -35,7 +35,7 @@ void a52_bitstream_set_ptr (a52_state_t * state, uint8_t * buf) | |||
35 | { | 35 | { |
36 | int align; | 36 | int align; |
37 | 37 | ||
38 | align = (long)buf & 3; | 38 | align = (intptr_t)buf & 3; |
39 | state->buffer_start = (uint32_t *) (buf - align); | 39 | state->buffer_start = (uint32_t *) (buf - align); |
40 | state->bits_left = 0; | 40 | state->bits_left = 0; |
41 | state->current_word = 0; | 41 | state->current_word = 0; |
diff --git a/lib/rbcodec/codecs/libtremor/codebook.c b/lib/rbcodec/codecs/libtremor/codebook.c index 7087f0a323..f3ac5a2b7e 100644 --- a/lib/rbcodec/codecs/libtremor/codebook.c +++ b/lib/rbcodec/codecs/libtremor/codebook.c | |||
@@ -293,7 +293,7 @@ static long decode_packed_block(codebook *book, oggpack_buffer *b, | |||
293 | if(b->endbyte < b->storage - 8) { | 293 | if(b->endbyte < b->storage - 8) { |
294 | ogg_uint32_t *ptr; | 294 | ogg_uint32_t *ptr; |
295 | unsigned long bit, bitend; | 295 | unsigned long bit, bitend; |
296 | unsigned long adr; | 296 | intptr_t adr; |
297 | ogg_uint32_t cache = 0; | 297 | ogg_uint32_t cache = 0; |
298 | int cachesize = 0; | 298 | int cachesize = 0; |
299 | const unsigned int cachemask = (1<<book->dec_firsttablen)-1; | 299 | const unsigned int cachemask = (1<<book->dec_firsttablen)-1; |
@@ -303,7 +303,7 @@ static long decode_packed_block(codebook *book, oggpack_buffer *b, | |||
303 | const ogg_uint32_t *book_codelist = book->codelist; | 303 | const ogg_uint32_t *book_codelist = book->codelist; |
304 | const char *book_dec_codelengths = book->dec_codelengths; | 304 | const char *book_dec_codelengths = book->dec_codelengths; |
305 | 305 | ||
306 | adr = (unsigned long)b->ptr; | 306 | adr = (intptr_t)b->ptr; |
307 | bit = (adr&3)*8+b->endbit; | 307 | bit = (adr&3)*8+b->endbit; |
308 | ptr = (ogg_uint32_t*)(adr&~3); | 308 | ptr = (ogg_uint32_t*)(adr&~3); |
309 | bitend = ((adr&3)+(b->storage-b->endbyte))*8; | 309 | bitend = ((adr&3)+(b->storage-b->endbyte))*8; |
@@ -334,7 +334,7 @@ static long decode_packed_block(codebook *book, oggpack_buffer *b, | |||
334 | cache >>= l; | 334 | cache >>= l; |
335 | } | 335 | } |
336 | 336 | ||
337 | adr=(unsigned long)b->ptr; | 337 | adr=(intptr_t)b->ptr; |
338 | bit-=(adr&3)*8+cachesize; | 338 | bit-=(adr&3)*8+cachesize; |
339 | b->endbyte+=bit/8; | 339 | b->endbyte+=bit/8; |
340 | b->ptr+=bit/8; | 340 | b->ptr+=bit/8; |
diff --git a/lib/rbcodec/metadata/id3tags.c b/lib/rbcodec/metadata/id3tags.c index 3492197c40..cda8ce3b7a 100644 --- a/lib/rbcodec/metadata/id3tags.c +++ b/lib/rbcodec/metadata/id3tags.c | |||
@@ -191,7 +191,7 @@ static int unsynchronize(char* tag, int len, bool *ff_found) | |||
191 | wp++; | 191 | wp++; |
192 | } | 192 | } |
193 | } | 193 | } |
194 | return (long)wp - (long)tag; | 194 | return (intptr_t)wp - (intptr_t)tag; |
195 | } | 195 | } |
196 | 196 | ||
197 | static int unsynchronize_frame(char* tag, int len) | 197 | static int unsynchronize_frame(char* tag, int len) |
@@ -562,7 +562,7 @@ static int unicode_munge(char* string, char* utf8buf, int *len) { | |||
562 | (*len)--; | 562 | (*len)--; |
563 | utf8 = iso_decode(str, utf8, -1, *len); | 563 | utf8 = iso_decode(str, utf8, -1, *len); |
564 | *utf8 = 0; | 564 | *utf8 = 0; |
565 | *len = (unsigned long)utf8 - (unsigned long)utf8buf; | 565 | *len = (intptr_t)utf8 - (intptr_t)utf8buf; |
566 | break; | 566 | break; |
567 | 567 | ||
568 | case 0x01: /* Unicode with or without BOM */ | 568 | case 0x01: /* Unicode with or without BOM */ |
@@ -619,7 +619,7 @@ static int unicode_munge(char* string, char* utf8buf, int *len) { | |||
619 | default: /* Plain old string */ | 619 | default: /* Plain old string */ |
620 | utf8 = iso_decode(str, utf8, -1, *len); | 620 | utf8 = iso_decode(str, utf8, -1, *len); |
621 | *utf8 = 0; | 621 | *utf8 = 0; |
622 | *len = (unsigned long)utf8 - (unsigned long)utf8buf; | 622 | *len = (intptr_t)utf8 - (intptr_t)utf8buf; |
623 | break; | 623 | break; |
624 | } | 624 | } |
625 | return 0; | 625 | return 0; |
diff --git a/lib/tlsf/src/tlsf.c b/lib/tlsf/src/tlsf.c index 6866f0c9b0..136c4152c0 100644 --- a/lib/tlsf/src/tlsf.c +++ b/lib/tlsf/src/tlsf.c | |||
@@ -54,6 +54,7 @@ | |||
54 | 54 | ||
55 | #include <stdio.h> | 55 | #include <stdio.h> |
56 | #include <string.h> | 56 | #include <string.h> |
57 | #include <stdint.h> | ||
57 | 58 | ||
58 | #ifndef TLSF_USE_LOCKS | 59 | #ifndef TLSF_USE_LOCKS |
59 | #define TLSF_USE_LOCKS (0) | 60 | #define TLSF_USE_LOCKS (0) |
@@ -462,7 +463,7 @@ size_t init_memory_pool(size_t mem_pool_size, void *mem_pool) | |||
462 | return -1; | 463 | return -1; |
463 | } | 464 | } |
464 | 465 | ||
465 | if (((unsigned long) mem_pool & PTR_MASK)) { | 466 | if (((intptr_t) mem_pool & PTR_MASK)) { |
466 | ERROR_MSG("init_memory_pool (): mem_pool must be aligned to a word\n"); | 467 | ERROR_MSG("init_memory_pool (): mem_pool must be aligned to a word\n"); |
467 | return -1; | 468 | return -1; |
468 | } | 469 | } |
@@ -522,7 +523,7 @@ size_t add_new_area(void *area, size_t area_size, void *mem_pool) | |||
522 | lb1 = ptr->end; | 523 | lb1 = ptr->end; |
523 | 524 | ||
524 | /* Merging the new area with the next physically contigous one */ | 525 | /* Merging the new area with the next physically contigous one */ |
525 | if ((unsigned long) ib1 == (unsigned long) lb0 + BHDR_OVERHEAD) { | 526 | if ((uintptr_t) ib1 == (uintptr_t) lb0 + BHDR_OVERHEAD) { |
526 | if (tlsf->area_head == ptr) { | 527 | if (tlsf->area_head == ptr) { |
527 | tlsf->area_head = ptr->next; | 528 | tlsf->area_head = ptr->next; |
528 | ptr = ptr->next; | 529 | ptr = ptr->next; |
@@ -543,7 +544,7 @@ size_t add_new_area(void *area, size_t area_size, void *mem_pool) | |||
543 | 544 | ||
544 | /* Merging the new area with the previous physically contigous | 545 | /* Merging the new area with the previous physically contigous |
545 | one */ | 546 | one */ |
546 | if ((unsigned long) lb1->ptr.buffer == (unsigned long) ib0) { | 547 | if ((intptr_t) lb1->ptr.buffer == (intptr_t) ib0) { |
547 | if (tlsf->area_head == ptr) { | 548 | if (tlsf->area_head == ptr) { |
548 | tlsf->area_head = ptr->next; | 549 | tlsf->area_head = ptr->next; |
549 | ptr = ptr->next; | 550 | ptr = ptr->next; |