Mercurial > pidgin
comparison src/util.c @ 5341:ccec8893c1be
[gaim-migrate @ 5717]
This fixes a memleak from my change last night. Thanks to Matt Pandina
for pointing out that I'm dumb :-)
Also, I made sec_to_text use g_strdup_printf instead of g_snprintf with a
fixed sized buffer. Down with fixed size buffers everywhere! Ra ra ree!
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Fri, 09 May 2003 14:39:06 +0000 |
parents | 6dfcd7dbecde |
children | 8d8bf0d31a23 |
comparison
equal
deleted
inserted
replaced
5340:986b2e4dae2d | 5341:ccec8893c1be |
---|---|
91 | 91 |
92 | 92 |
93 gchar *sec_to_text(guint sec) | 93 gchar *sec_to_text(guint sec) |
94 { | 94 { |
95 guint daze, hrs, min; | 95 guint daze, hrs, min; |
96 char *ret = g_malloc(256); | 96 char *ret = NULL; |
97 | 97 |
98 daze = sec / (60 * 60 * 24); | 98 daze = sec / (60 * 60 * 24); |
99 hrs = (sec % (60 * 60 * 24)) / (60 * 60); | 99 hrs = (sec % (60 * 60 * 24)) / (60 * 60); |
100 min = (sec % (60 * 60)) / 60; | 100 min = (sec % (60 * 60)) / 60; |
101 sec = min % 60; | 101 sec = min % 60; |
102 | 102 |
103 if (daze) { | 103 if (daze) { |
104 if (hrs || min) { | 104 if (hrs || min) { |
105 if (hrs) { | 105 if (hrs) { |
106 if (min) { | 106 if (min) { |
107 g_snprintf(ret, 256, | 107 ret = g_strdup_printf( |
108 "%d %s, %d %s, %d %s.", | 108 "%d %s, %d %s, %d %s.", |
109 daze, ngettext("day","days",daze), | 109 daze, ngettext("day","days",daze), |
110 hrs, ngettext("hour","hours",hrs), min, ngettext("minute","minutes",min)); | 110 hrs, ngettext("hour","hours",hrs), min, ngettext("minute","minutes",min)); |
111 } else { | 111 } else { |
112 g_snprintf(ret, 256, | 112 ret = g_strdup_printf( |
113 "%d %s, %d %s.", | 113 "%d %s, %d %s.", |
114 daze, ngettext("day","days",daze), hrs, ngettext("hour","hours",hrs)); | 114 daze, ngettext("day","days",daze), hrs, ngettext("hour","hours",hrs)); |
115 } | 115 } |
116 } else { | 116 } else { |
117 g_snprintf(ret, 256, | 117 ret = g_strdup_printf( |
118 "%d %s, %d %s.", | 118 "%d %s, %d %s.", |
119 daze, ngettext("day","days",daze), min, ngettext("minute","minutes",min)); | 119 daze, ngettext("day","days",daze), min, ngettext("minute","minutes",min)); |
120 } | 120 } |
121 } else | 121 } else |
122 g_snprintf(ret, 256, "%d %s.", daze, ngettext("day","days",daze)); | 122 ret = g_strdup_printf("%d %s.", daze, ngettext("day","days",daze)); |
123 } else { | 123 } else { |
124 if (hrs) { | 124 if (hrs) { |
125 if (min) { | 125 if (min) { |
126 g_snprintf(ret, 256, | 126 ret = g_strdup_printf( |
127 "%d %s, %d %s.", | 127 "%d %s, %d %s.", |
128 hrs, ngettext("hour","hours",hrs), min, ngettext("minute","minutes",min)); | 128 hrs, ngettext("hour","hours",hrs), min, ngettext("minute","minutes",min)); |
129 } else { | 129 } else { |
130 g_snprintf(ret, 256, "%d %s.", hrs, ngettext("hour","hours",hrs)); | 130 ret = g_strdup_printf("%d %s.", hrs, ngettext("hour","hours",hrs)); |
131 } | 131 } |
132 } else { | 132 } else { |
133 g_snprintf(ret, 256, "%d %s.", min, ngettext("minute","minutes",min)); | 133 ret = g_strdup_printf("%d %s.", min, ngettext("minute","minutes",min)); |
134 } | 134 } |
135 } | 135 } |
136 | 136 |
137 return ret; | 137 return ret; |
138 } | 138 } |