author | Lars Hjemli <hjemli@gmail.com> | 2007-09-19 22:21:47 (UTC) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2007-09-19 22:21:47 (UTC) |
commit | 0835ffefb8a1f5387463b22e2e5f7e34d387d7b1 (patch) (unidiff) | |
tree | b05423687e97b885f8a6b2617bb6018fbb9d3407 /shared.c | |
parent | 6df9c7028a489578bc8593e56298cd869fcdc1fc (diff) | |
download | cgit-0835ffefb8a1f5387463b22e2e5f7e34d387d7b1.zip cgit-0835ffefb8a1f5387463b22e2e5f7e34d387d7b1.tar.gz cgit-0835ffefb8a1f5387463b22e2e5f7e34d387d7b1.tar.bz2 |
Remove a few compiler warnings
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | shared.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -247,129 +247,130 @@ void *cgit_free_commitinfo(struct commitinfo *info) | |||
247 | { | 247 | { |
248 | free(info->author); | 248 | free(info->author); |
249 | free(info->author_email); | 249 | free(info->author_email); |
250 | free(info->committer); | 250 | free(info->committer); |
251 | free(info->committer_email); | 251 | free(info->committer_email); |
252 | free(info->subject); | 252 | free(info->subject); |
253 | free(info); | 253 | free(info); |
254 | return NULL; | 254 | return NULL; |
255 | } | 255 | } |
256 | 256 | ||
257 | int hextoint(char c) | 257 | int hextoint(char c) |
258 | { | 258 | { |
259 | if (c >= 'a' && c <= 'f') | 259 | if (c >= 'a' && c <= 'f') |
260 | return 10 + c - 'a'; | 260 | return 10 + c - 'a'; |
261 | else if (c >= 'A' && c <= 'F') | 261 | else if (c >= 'A' && c <= 'F') |
262 | return 10 + c - 'A'; | 262 | return 10 + c - 'A'; |
263 | else if (c >= '0' && c <= '9') | 263 | else if (c >= '0' && c <= '9') |
264 | return c - '0'; | 264 | return c - '0'; |
265 | else | 265 | else |
266 | return -1; | 266 | return -1; |
267 | } | 267 | } |
268 | 268 | ||
269 | char *trim_end(const char *str, char c) | 269 | char *trim_end(const char *str, char c) |
270 | { | 270 | { |
271 | int len; | 271 | int len; |
272 | char *s, *t; | 272 | char *s, *t; |
273 | 273 | ||
274 | if (str == NULL) | 274 | if (str == NULL) |
275 | return NULL; | 275 | return NULL; |
276 | t = (char *)str; | 276 | t = (char *)str; |
277 | len = strlen(t); | 277 | len = strlen(t); |
278 | while(len > 0 && t[len - 1] == c) | 278 | while(len > 0 && t[len - 1] == c) |
279 | len--; | 279 | len--; |
280 | 280 | ||
281 | if (len == 0) | 281 | if (len == 0) |
282 | return NULL; | 282 | return NULL; |
283 | 283 | ||
284 | c = t[len]; | 284 | c = t[len]; |
285 | t[len] = '\0'; | 285 | t[len] = '\0'; |
286 | s = xstrdup(t); | 286 | s = xstrdup(t); |
287 | t[len] = c; | 287 | t[len] = c; |
288 | return s; | 288 | return s; |
289 | } | 289 | } |
290 | 290 | ||
291 | void cgit_diff_tree_cb(struct diff_queue_struct *q, | 291 | void cgit_diff_tree_cb(struct diff_queue_struct *q, |
292 | struct diff_options *options, void *data) | 292 | struct diff_options *options, void *data) |
293 | { | 293 | { |
294 | int i; | 294 | int i; |
295 | 295 | ||
296 | for (i = 0; i < q->nr; i++) { | 296 | for (i = 0; i < q->nr; i++) { |
297 | if (q->queue[i]->status == 'U') | 297 | if (q->queue[i]->status == 'U') |
298 | continue; | 298 | continue; |
299 | ((filepair_fn)data)(q->queue[i]); | 299 | ((filepair_fn)data)(q->queue[i]); |
300 | } | 300 | } |
301 | } | 301 | } |
302 | 302 | ||
303 | static int load_mmfile(mmfile_t *file, const unsigned char *sha1) | 303 | static int load_mmfile(mmfile_t *file, const unsigned char *sha1) |
304 | { | 304 | { |
305 | enum object_type type; | 305 | enum object_type type; |
306 | 306 | ||
307 | if (is_null_sha1(sha1)) { | 307 | if (is_null_sha1(sha1)) { |
308 | file->ptr = (char *)""; | 308 | file->ptr = (char *)""; |
309 | file->size = 0; | 309 | file->size = 0; |
310 | } else { | 310 | } else { |
311 | file->ptr = read_sha1_file(sha1, &type, &file->size); | 311 | file->ptr = read_sha1_file(sha1, &type, |
312 | (unsigned long *)&file->size); | ||
312 | } | 313 | } |
313 | return 1; | 314 | return 1; |
314 | } | 315 | } |
315 | 316 | ||
316 | /* | 317 | /* |
317 | * Receive diff-buffers from xdiff and concatenate them as | 318 | * Receive diff-buffers from xdiff and concatenate them as |
318 | * needed across multiple callbacks. | 319 | * needed across multiple callbacks. |
319 | * | 320 | * |
320 | * This is basically a copy of xdiff-interface.c/xdiff_outf(), | 321 | * This is basically a copy of xdiff-interface.c/xdiff_outf(), |
321 | * ripped from git and modified to use globals instead of | 322 | * ripped from git and modified to use globals instead of |
322 | * a special callback-struct. | 323 | * a special callback-struct. |
323 | */ | 324 | */ |
324 | char *diffbuf = NULL; | 325 | char *diffbuf = NULL; |
325 | int buflen = 0; | 326 | int buflen = 0; |
326 | 327 | ||
327 | int filediff_cb(void *priv, mmbuffer_t *mb, int nbuf) | 328 | int filediff_cb(void *priv, mmbuffer_t *mb, int nbuf) |
328 | { | 329 | { |
329 | int i; | 330 | int i; |
330 | 331 | ||
331 | for (i = 0; i < nbuf; i++) { | 332 | for (i = 0; i < nbuf; i++) { |
332 | if (mb[i].ptr[mb[i].size-1] != '\n') { | 333 | if (mb[i].ptr[mb[i].size-1] != '\n') { |
333 | /* Incomplete line */ | 334 | /* Incomplete line */ |
334 | diffbuf = xrealloc(diffbuf, buflen + mb[i].size); | 335 | diffbuf = xrealloc(diffbuf, buflen + mb[i].size); |
335 | memcpy(diffbuf + buflen, mb[i].ptr, mb[i].size); | 336 | memcpy(diffbuf + buflen, mb[i].ptr, mb[i].size); |
336 | buflen += mb[i].size; | 337 | buflen += mb[i].size; |
337 | continue; | 338 | continue; |
338 | } | 339 | } |
339 | 340 | ||
340 | /* we have a complete line */ | 341 | /* we have a complete line */ |
341 | if (!diffbuf) { | 342 | if (!diffbuf) { |
342 | ((linediff_fn)priv)(mb[i].ptr, mb[i].size); | 343 | ((linediff_fn)priv)(mb[i].ptr, mb[i].size); |
343 | continue; | 344 | continue; |
344 | } | 345 | } |
345 | diffbuf = xrealloc(diffbuf, buflen + mb[i].size); | 346 | diffbuf = xrealloc(diffbuf, buflen + mb[i].size); |
346 | memcpy(diffbuf + buflen, mb[i].ptr, mb[i].size); | 347 | memcpy(diffbuf + buflen, mb[i].ptr, mb[i].size); |
347 | ((linediff_fn)priv)(diffbuf, buflen + mb[i].size); | 348 | ((linediff_fn)priv)(diffbuf, buflen + mb[i].size); |
348 | free(diffbuf); | 349 | free(diffbuf); |
349 | diffbuf = NULL; | 350 | diffbuf = NULL; |
350 | buflen = 0; | 351 | buflen = 0; |
351 | } | 352 | } |
352 | if (diffbuf) { | 353 | if (diffbuf) { |
353 | ((linediff_fn)priv)(diffbuf, buflen); | 354 | ((linediff_fn)priv)(diffbuf, buflen); |
354 | free(diffbuf); | 355 | free(diffbuf); |
355 | diffbuf = NULL; | 356 | diffbuf = NULL; |
356 | buflen = 0; | 357 | buflen = 0; |
357 | } | 358 | } |
358 | return 0; | 359 | return 0; |
359 | } | 360 | } |
360 | 361 | ||
361 | int cgit_diff_files(const unsigned char *old_sha1, | 362 | int cgit_diff_files(const unsigned char *old_sha1, |
362 | const unsigned char *new_sha1, | 363 | const unsigned char *new_sha1, |
363 | linediff_fn fn) | 364 | linediff_fn fn) |
364 | { | 365 | { |
365 | mmfile_t file1, file2; | 366 | mmfile_t file1, file2; |
366 | xpparam_t diff_params; | 367 | xpparam_t diff_params; |
367 | xdemitconf_t emit_params; | 368 | xdemitconf_t emit_params; |
368 | xdemitcb_t emit_cb; | 369 | xdemitcb_t emit_cb; |
369 | 370 | ||
370 | if (!load_mmfile(&file1, old_sha1) || !load_mmfile(&file2, new_sha1)) | 371 | if (!load_mmfile(&file1, old_sha1) || !load_mmfile(&file2, new_sha1)) |
371 | return 1; | 372 | return 1; |
372 | 373 | ||
373 | diff_params.flags = XDF_NEED_MINIMAL; | 374 | diff_params.flags = XDF_NEED_MINIMAL; |
374 | emit_params.ctxlen = 3; | 375 | emit_params.ctxlen = 3; |
375 | emit_params.flags = XDL_EMIT_FUNCNAMES; | 376 | emit_params.flags = XDL_EMIT_FUNCNAMES; |