[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Problem report #50
From: |
Dan Nicolaescu |
Subject: |
Problem report #50 |
Date: |
Sun, 09 Apr 2006 00:00:08 -0700 |
ERROR
CID: 50
Checker: REVERSE_INULL (help)
File: emacs/src/xrdb.c
Function: get_user_app
Description: Pointer "free_it" dereferenced before NULL check
Event deref_ptr_in_call: Dereferences pointer "free_it" [model]
Also see events: [check_after_deref]
At conditional (1): "file = search_magic_path != 0" taking false path
At conditional (2): "file = search_magic_path != 0" taking false path
419 if (((path = getenv ("XUSERFILESEARCHPATH"))
420 && (file = search_magic_path (path, class, 0, 0)))
421
422 /* Check for APPLRESDIR; it is a path of directories. In each,
423 we have to search for LANG/CLASS and then CLASS. */
424 || ((path = getenv ("XAPPLRESDIR"))
425 && ((file = search_magic_path (path, class, "/%L/%N", 0))
426 || (file = search_magic_path (path, class, "/%N", 0))))
427
428 /* Check in the home directory. This is a bit of a hack; let's
429 hope one's home directory doesn't contain any %-escapes. */
430 || (free_it = gethomedir (),
431 ((file = search_magic_path (free_it, class, "%L/%N", 0))
432 || (file = search_magic_path (free_it, class, "%N", 0)))))
433 {
434 XrmDatabase db = XrmGetFileDatabase (file);
435 free (file);
436 if (free_it)
437 free (free_it);
438 return db;
439 }
440
Event check_after_deref: Pointer "free_it" dereferenced before NULL check
Also see events: [deref_ptr_in_call]
441 if (free_it)
442 free (free_it);
443 return NULL;
444 }
445
- Problem report #50,
Dan Nicolaescu <=