annotate components/gdi @ 516:1ed9de6c90bd

src/g23m-gsm/sms/sms_for.c: bogus malloc removed The new error handling code that was not present in TCS211 blob version contains a malloc call that is bogus for 3 reasons: 1) The memory allocation in question is not needed in the first place; 2) libc malloc is used instead of one of the firmware's proper ways; 3) The memory allocation is made inside a function and then never freed, i.e., a memory leak. This bug was caught in gcc-built FreeCalypso fw projects (Citrine and Selenite) because our gcc environment does not allow any use of libc malloc (any reference to malloc produces a link failure), but this code from TCS3.2 is wrong even for Magnetite: if this code path is executed repeatedly over a long time, the many small allocations made by this malloc call without a subsequent free will eventually exhaust the malloc heap provided by the TMS470 environment, malloc will start returning NULL, and the bogus code will treat it as an error. Because the memory allocation in question is not needed at all, the fix entails simply removing it.
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 22 Jul 2018 06:04:49 +0000
parents 4d7c2ccb5814
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 # Building gdi.lib
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 CFLAGS="-me -mt -o -pw2 -x -mw"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 # Defines
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 CPPFLAGS=-DCCDTABLES_EXTERN
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 CPPFLAGS="$CPPFLAGS -DOPTION_MULTITHREAD"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 CPPFLAGS="$CPPFLAGS -DNEW_FRAME"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 CPPFLAGS="$CPPFLAGS -DNEW_ENTITY"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 CPPFLAGS="$CPPFLAGS -D_TARGET_"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 CPPFLAGS="$CPPFLAGS -DSHARED_VSI"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 CPPFLAGS="$CPPFLAGS -DALR"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 CPPFLAGS="$CPPFLAGS -DFF_HOMEZONE"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 CPPFLAGS="$CPPFLAGS -DFF_MMI_SAT_ICON"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 CPPFLAGS="$CPPFLAGS -DFF_MMI_SMS_DYNAMIC"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 CPPFLAGS="$CPPFLAGS -DFF_CPHS"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 CPPFLAGS="$CPPFLAGS -D_TMS470"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 CPPFLAGS="$CPPFLAGS -DUART"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 CPPFLAGS="$CPPFLAGS -DFF_ATI"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 CPPFLAGS="$CPPFLAGS -DNWARN"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 CPPFLAGS="$CPPFLAGS -DFF_EM_MODE"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 CPPFLAGS="$CPPFLAGS -DMMI=$MMI"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 if [ "$MMI" = 0 ]
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 then
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 CPPFLAGS="$CPPFLAGS -DACI"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 elif [ "$MMI" = 2 ]
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 then
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 CPPFLAGS="$CPPFLAGS -DMFW"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 fi
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 CPPFLAGS="$CPPFLAGS -DMMI_HOMEZONE_ENABLED"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 CPPFLAGS="$CPPFLAGS -DFF_MMI_SAT_ICON"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 CPPFLAGS="$CPPFLAGS -DFF_MMI_SMS_DYNAMIC"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 if [ "$GPRS" = 1 ]
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 then
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 CPPFLAGS="$CPPFLAGS -DMMI_GPRS_ENABLED"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 fi
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 CPPFLAGS="$CPPFLAGS -DMMI_EM_ENABLED"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 CPPFLAGS="$CPPFLAGS -DNO_ASCIIZ"
113
bfcfbffd2736 components/gdi: preparations for integrating tcs211-c139 work
Mychaela Falconia <falcon@freecalypso.org>
parents: 26
diff changeset
44
452
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
45 case "$UI_CONFIG" in
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
46 bigcolor)
451
fd1d9063ad40 config mechanism: added ability to build D-Sample B&W UI configuration
Mychaela Falconia <falcon@freecalypso.org>
parents: 392
diff changeset
47 CPPFLAGS="$CPPFLAGS -DCOLOURDISPLAY"
452
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
48 CPPFLAGS="$CPPFLAGS -DLSCREEN"
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
49 ;;
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
50 bigbw)
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
51 CPPFLAGS="$CPPFLAGS -DLSCREEN"
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
52 ;;
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
53 84x48)
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
54 ;;
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
55 *)
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
56 echo "Error: UI_CONFIG=$UI_CONFIG setting not understood" 1>&2
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
57 exit 1
4d7c2ccb5814 config mechanism: high-level UI config made separate from target display drivers
Mychaela Falconia <falcon@freecalypso.org>
parents: 451
diff changeset
58 esac
113
bfcfbffd2736 components/gdi: preparations for integrating tcs211-c139 work
Mychaela Falconia <falcon@freecalypso.org>
parents: 26
diff changeset
59
26
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 CPPFLAGS="$CPPFLAGS -DINT_PHONEBOOK"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61 CPPFLAGS="$CPPFLAGS -DNEW_EDITOR"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 CPPFLAGS="$CPPFLAGS -DTRGT_G23"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63 CPPFLAGS="$CPPFLAGS -DAUS_CONDAT_TYPE_PORTING"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64 CPPFLAGS="$CPPFLAGS -DPHONEBOOK_EXTENSION"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 if [ "$GPRS" = 1 ]
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 then
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68 CPPFLAGS="$CPPFLAGS -DGPRS"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 fi
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70
392
30203d5aeb74 components/*: -DCHIPSET=$CHIPSET instead of fixed -DCHIPSET=10
Mychaela Falconia <falcon@freecalypso.org>
parents: 378
diff changeset
71 CPPFLAGS="$CPPFLAGS -DCHIPSET=$CHIPSET"
26
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72 CPPFLAGS="$CPPFLAGS -DBOARD=41"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73 CPPFLAGS="$CPPFLAGS -DCUST=0"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74 CPPFLAGS="$CPPFLAGS -DTESTMODE=1"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76 # Includes
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
78 CPPFLAGS="$CPPFLAGS -I$SRC/$CONDAT/com/inc"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 CPPFLAGS="$CPPFLAGS -I$SRC/$GPF/inc"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 CPPFLAGS="$CPPFLAGS -I$SRC/$CONDAT/com/include"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 CPPFLAGS="$CPPFLAGS -I../../$CDGINC"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82 CPPFLAGS="$CPPFLAGS -I$SRC/$GPF/inc/nuc"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
83 CPPFLAGS="$CPPFLAGS -I$SRC/condat2/com/src/driver"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
84 CPPFLAGS="$CPPFLAGS -I../../$CDGPRIM"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
85 CPPFLAGS="$CPPFLAGS -I.."
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 CPPFLAGS="$CPPFLAGS -I../config"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
87 CPPFLAGS="$CPPFLAGS -I$SRC/cs/riviera"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_app"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/abb"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/armio"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/clkm"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
93 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/conf"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
94 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/dma"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
95 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/dsp_dwnld"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
96 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/inth"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
97 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/memif"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/rhea"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
99 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/security"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
100 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/spi"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
101 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/timer"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
102 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/uart"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
103 CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/ulpd"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
104 CPPFLAGS="$CPPFLAGS -I$SRC/cs/system"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
105 CPPFLAGS="$CPPFLAGS -I$SRC/cs/layer1/include"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
106 CPPFLAGS="$CPPFLAGS -I$SRC/cs/services"
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
107
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
108 # Source modules
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
109
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
110 SRCDIR=$SRC/condat2/com/src/driver
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
111
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
112 cfile_str2ind $SRCDIR/audio.c
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
113 cfile_str2ind $SRCDIR/display.c
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
114 cfile_str2ind $SRCDIR/keypad.c
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
115 cfile_str2ind $SRCDIR/light.c
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
116 cfile_str2ind $SRCDIR/power.c
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
117 cfile_str2ind $SRCDIR/rx.c
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
118 cfile_str2ind $SRCDIR/em.c
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
119 cfile_str2ind $SRCDIR/rtc.c
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
120 cfile_str2ind $SRCDIR/vmd.c
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
121 cfile_str2ind $SRCDIR/font_bitmaps.c
648d079d4e58 gdi.lib done
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
122 cfile_str2ind $SRCDIR/ffs_coat.c