Text  |   XML   |   Visible Warnings:

Irssi : Irssi analysis 1 : Null Pointer Dereference  at statusbar.c:631

Categories: LANG.MEM.NPD CWE:476
Warning ID: 2343.2353
Procedure: statusbar_item_get_value
Trace: View
Modified: Wed Sep 2 12:18:27 2009   show details
 
Priority: None
State: None
Finding: None
Owner: None
  edit properties

Legend [ X ]
Warning Location
Contributes
Parse Error
Other Warning
Two or More Loop Iterations
On Execution Path
Comment
Macro
Preprocessor
Include
Keyword
Preprocessed Away

Source  |  Language: C Hide Legend     
ProblemLineSource
   /u1/paul/SATE/2010/c/irssi/irssi-0.8.14/src/perl/textui/Statusbar.c
   Enter XS_Irssi__TextUI__StatusbarItem_default_handler
 228 XS(XS_Irssi__TextUI__StatusbarItem_default_handler) 
 229 {
 230 #ifdef dVAR 
 231     dVAR; dXSARGS;
 232 #else 
 233     dXSARGS; 
 234 #endif 
 235     if (items < 4 || items > 5)
 236        Perl_croak(aTHX_ "Usage: %s(%s)", "Irssi::TextUI::StatusbarItem::default_handler", "item, get_size_only, str, data, escape_vars = TRUE");
 237     PERL_UNUSED_VAR(cv); /* -W */ 
 238     {
true239         Irssi__TextUI__StatusbarItem    item = irssi_ref_object(ST(0));
 240         int     get_size_only = (int)SvIV(ST(1));
 241         char *  str = (char *)SvPV_nolen(ST(2));
 242         char *  data = (char *)SvPV_nolen(ST(3));
 243         int     escape_vars;
 244 #line 158 "Statusbar.xs"
 245         HV *hv;
 246 #line 247 "Statusbar.c"
 247  
 248         if (items < 5)
 249             escape_vars = TRUE;
 250         else {
 251             escape_vars = (int)SvIV(ST(4));
 252         }
 253 #line 160 "Statusbar.xs"
 254         statusbar_item_default_handler(item, get_size_only,
 255                                        *str == '\0' ? NULL : str,
item <= 4095256                                        data, escape_vars);
     /u1/paul/SATE/2010/c/irssi/irssi-0.8.14/src/fe-text/statusbar.c
     Enter XS_Irssi__TextUI__StatusbarItem_default_handler / statusbar_item_default_handler
 666   void statusbar_item_default_handler(SBAR_ITEM_REC *item, int get_size_only,
 667                                       const char *str, const char *data,
$param_1 <= 4095668                                       int escape_vars) 
 669   {
 670           SERVER_REC *server;
 671           WI_ITEM_REC *wiitem;  
 672           char *tmpstr, *tmpstr2;
 673           int len;
 674    
 675           if (str == NULL)
item <= 4095676                   str = statusbar_item_get_value(item);
       Enter XS_Irssi__TextUI__StatusbarItem_default_handler / statusbar_item_default_handler / statusbar_item_get_value
$param_1 <= 4095627     static const char *statusbar_item_get_value(SBAR_ITEM_REC *item) 
 628     {
 629             const char *value;
 630      
item <= 4095631             value = item->config->value;     /* Null Pointer Dereference */
       Exit XS_Irssi__TextUI__StatusbarItem_default_handler / statusbar_item_default_handler / statusbar_item_get_value
     Exit XS_Irssi__TextUI__StatusbarItem_default_handler / statusbar_item_default_handler
Preconditions
&$unknown_2972261 >= 6
$unknown_2972321 = 0
strlen(&$unknown_2972321) = 0
Postconditions
_svi' = &$unknown_2972277
_svi' = &$unknown_2972289
$unknown_2972255' = $unknown_2972255 - 4
cv' = $param_2
data' = data'
escape_vars' = escape_vars'
get_size_only' = get_size_only'
item' = 0
item' = 0
item' = 0
items' = &$unknown_2972261
my_perl' = $param_1
str' = 0
str' = &$unknown_2972321




Change Warning 2343.2353 : Null Pointer Dereference

Priority:
State:
Finding:
Owner:
Note: