2024-04-24 14:51 ftp://ftp.de.debian.org/debian/pool/main/f/feh/feh_3.10.1.orig.tar.bz2 cppcheck-options: --library=posix --library=gnu --library=bsd --library=motif --library=libcurl --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning -D__GNUC__ --platform=unix64 -j1 platform: Linux-5.15.0-105-generic-x86_64-with-glibc2.35 python: 3.10.12 client-version: 1.3.56 compiler: g++ (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0 cppcheck: head 2.14.0 head-info: 9fab9b9 (2024-04-24 10:46:48 +0200) count: 225 225 elapsed-time: 23.7 23.1 head-timing-info: old-timing-info: head results: feh-3.10.1/src/events.c:68:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ControlMask [valueFlowBailoutIncompleteVar] feh-3.10.1/src/events.c:146:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] feh-3.10.1/src/events.c:180:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LASTEvent [valueFlowBailoutIncompleteVar] feh-3.10.1/src/events.c:210:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ControlMask [valueFlowBailoutIncompleteVar] feh-3.10.1/src/events.c:333:44: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ControlMask [valueFlowBailoutIncompleteVar] feh-3.10.1/src/events.c:423:61: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ConfigureNotify [valueFlowBailoutIncompleteVar] feh-3.10.1/src/events.c:488:59: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MotionNotify [valueFlowBailoutIncompleteVar] feh-3.10.1/src/events.c:341:14: style: Condition 'menu_root' is always true [knownConditionTrueFalse] feh-3.10.1/src/events.c:126:51: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/events.c:128:55: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/events.c:447:51: style: Parameter 'ev' can be declared as pointer to const. However it seems that 'feh_event_handle_LeaveNotify' is a callback function, if 'ev' is declared with const you might also need to cast function pointer(s). [constParameterCallback] feh-3.10.1/src/events.c:187:28: note: You might need to cast the function pointer here feh-3.10.1/src/events.c:447:51: note: Parameter 'ev' can be declared as pointer to const feh-3.10.1/src/events.c:485:18: style: Variable 'selected_item' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/events.c:112:11: style: Variable 'read' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/feh_png.c:36:39: style: Parameter 'file' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/feh_png.c:39:29: style: Variable 'comments' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/feh_png.c:39:6: style: Unused variable: i [unusedVariable] feh-3.10.1/src/feh_png.c:43:12: style: Unused variable: text_ptr [unusedVariable] feh-3.10.1/src/filelist.c:137:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] feh-3.10.1/src/filelist.c:180:59: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] feh-3.10.1/src/filelist.c:233:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] feh-3.10.1/src/filelist.c:361:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] feh-3.10.1/src/filelist.c:555:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] feh-3.10.1/src/filelist.c:574:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_LOAD_ERROR_NONE [valueFlowBailoutIncompleteVar] feh-3.10.1/src/filelist.c:675:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] feh-3.10.1/src/filelist.c:615:3: warning: sscanf() without field width limits can crash with huge input data. [invalidscanf] feh-3.10.1/src/filelist.c:162:54: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/filelist.c:268:55: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/filelist.c:665:46: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/filelist.c:113:60: style:inconclusive: Function 'feh_file_rm_and_free' argument 2 names different: declaration 'file' definition 'l'. [funcArgNamesDifferent] feh-3.10.1/src/filelist.h:86:60: note: Function 'feh_file_rm_and_free' argument 2 names different: declaration 'file' definition 'l'. feh-3.10.1/src/filelist.c:113:60: note: Function 'feh_file_rm_and_free' argument 2 names different: declaration 'file' definition 'l'. feh-3.10.1/src/filelist.c:390:45: style: Parameter 'f' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/filelist.c:472:26: style: Parameter 'file1' can be declared as pointer to const. However it seems that 'feh_cmp_format' is a callback function, if 'file1' is declared with const you might also need to cast function pointer(s). [constParameterCallback] feh-3.10.1/src/filelist.c:532:38: note: You might need to cast the function pointer here feh-3.10.1/src/filelist.c:472:26: note: Parameter 'file1' can be declared as pointer to const feh-3.10.1/src/filelist.c:472:39: style: Parameter 'file2' can be declared as pointer to const. However it seems that 'feh_cmp_format' is a callback function, if 'file2' is declared with const you might also need to cast function pointer(s). [constParameterCallback] feh-3.10.1/src/filelist.c:532:38: note: You might need to cast the function pointer here feh-3.10.1/src/filelist.c:472:39: note: Parameter 'file2' can be declared as pointer to const feh-3.10.1/src/filelist.c:699:31: style: Parameter 'url' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/gib_hash.c:31:40: style: Parameter 'key' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/gib_hash.c:89:17: style: Variable 'node' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/gib_hash.c:90:17: style: Variable 'key' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/gib_imlib.c:384:22: style: Variable 'b' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/gib_imlib.c:508:10: style: Variable 'tmp' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/gib_imlib.c:683:32: style: Parameter 'path' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/gib_list.c:427:47: debug: Function::addArguments found argument 'cmp' with varid 0. [varid0] feh-3.10.1/src/gib_list.c:453:66: debug: Function::addArguments found argument 'cmp' with varid 0. [varid0] feh-3.10.1/src/gib_list.c:365:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable RAND_MAX [valueFlowBailoutIncompleteVar] feh-3.10.1/src/gib_list.c:449:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cmp [valueFlowBailoutIncompleteVar] feh-3.10.1/src/gib_list.c:227:44: style: Parameter 'root' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/gib_list.c:385:42: style: Parameter 'l' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/gib_list.c:527:63: style: Parameter 'list' can be declared as pointer to const. However it seems that 'gib_list_find_by_data_callback' is a callback function, if 'list' is declared with const you might also need to cast function pointer(s). [constParameterCallback] feh-3.10.1/src/gib_list.c:535:29: note: You might need to cast the function pointer here feh-3.10.1/src/gib_list.c:527:63: note: Parameter 'list' can be declared as pointer to const feh-3.10.1/src/gib_list.c:527:75: style: Parameter 'data' can be declared as pointer to const. However it seems that 'gib_list_find_by_data_callback' is a callback function, if 'data' is declared with const you might also need to cast function pointer(s). [constParameterCallback] feh-3.10.1/src/gib_list.c:535:29: note: You might need to cast the function pointer here feh-3.10.1/src/gib_list.c:527:75: note: Parameter 'data' can be declared as pointer to const feh-3.10.1/src/gib_list.c:572:8: style: Variable 'n' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/gib_style.c:31:21: style: Parameter 'name' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/imlib.c:116:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PREFIX [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:142:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_OP_COPY [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:175:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_LOAD_ERROR_OUT_OF_FILE_DESCRIPTORS [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:331:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_LOAD_ERROR_NONE [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:576:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_WRONLY [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:617:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NAME_MAX [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:689:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NAME_MAX [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:1024:51: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:1046:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:1077:57: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:1111:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:1285:67: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:1437:59: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:1495:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:1534:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_LOAD_ERROR_NONE [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:1635:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:1763:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_WRONLY [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:1815:66: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/imlib.c:777:17: portability: Non reentrant function 'readdir' called. For threadsafe applications it is recommended to use the reentrant replacement function 'readdir_r'. [prohibitedreaddirCalled] feh-3.10.1/src/imlib.c:345:55: style: Condition '(tmpname=feh_http_load_image(file->filename))==NULL' is always true [knownConditionTrueFalse] feh-3.10.1/src/imlib.c:345:37: note: Calling function 'feh_http_load_image' returns 0 feh-3.10.1/src/imlib.c:345:55: note: Condition '(tmpname=feh_http_load_image(file->filename))==NULL' is always true feh-3.10.1/src/imlib.c:351:19: style: Condition 'feh_is_image(file,0)' is always true [knownConditionTrueFalse] feh-3.10.1/src/imlib.c:351:19: note: Calling function 'feh_is_image' returns 1 feh-3.10.1/src/imlib.c:351:19: note: Condition 'feh_is_image(file,0)' is always true feh-3.10.1/src/imlib.c:659:2: error: Resource leak: fd [resourceLeak] feh-3.10.1/src/imlib.c:379:4: warning: Either the condition 'im' is redundant or there is possible null pointer dereference: im. [nullPointerRedundantCheck] feh-3.10.1/src/imlib.c:380:15: note: Assuming that condition 'im' is not redundant feh-3.10.1/src/imlib.c:379:4: note: Null pointer dereference feh-3.10.1/src/imlib.c:794:12: warning: Either the condition '(dir=opendir(tempdir))==NULL' is redundant or there is possible null pointer dereference: dir. [nullPointerRedundantCheck] feh-3.10.1/src/imlib.c:774:32: note: Assuming that condition '(dir=opendir(tempdir))==NULL' is not redundant feh-3.10.1/src/imlib.c:794:12: note: Null pointer dereference feh-3.10.1/src/imlib.c:1110:30: warning: Either the condition 'w->file' is redundant or there is possible null pointer dereference: w->file. [nullPointerRedundantCheck] feh-3.10.1/src/imlib.c:1117:8: note: Assuming that condition 'w->file' is not redundant feh-3.10.1/src/imlib.c:1110:30: note: Null pointer dereference feh-3.10.1/src/imlib.c:620:39: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/imlib.c:692:39: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/imlib.c:707:36: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/imlib.c:779:67: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/imlib.c:1350:51: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/imlib.c:1365:85: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/imlib.c:1530:40: style:inconclusive: Function 'feh_edit_inplace' argument 2 names different: declaration 'orientation' definition 'op'. [funcArgNamesDifferent] feh-3.10.1/src/feh.h:189:40: note: Function 'feh_edit_inplace' argument 2 names different: declaration 'orientation' definition 'op'. feh-3.10.1/src/imlib.c:1530:40: note: Function 'feh_edit_inplace' argument 2 names different: declaration 'orientation' definition 'op'. feh-3.10.1/src/imlib.c:1708:49: style:inconclusive: Function 'feh_edit_inplace_lossless' argument 2 names different: declaration 'orientation' definition 'op'. [funcArgNamesDifferent] feh-3.10.1/src/feh.h:190:49: note: Function 'feh_edit_inplace_lossless' argument 2 names different: declaration 'orientation' definition 'op'. feh-3.10.1/src/imlib.c:1708:49: note: Function 'feh_edit_inplace_lossless' argument 2 names different: declaration 'orientation' definition 'op'. feh-3.10.1/src/imlib.c:323:53: style: Parameter 'file' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/imlib.c:1611:33: style: Parameter 'text' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/imlib.c:1615:7: style: Variable 'delim' can be declared as const array [constVariable] feh-3.10.1/src/imlib.c:1710:8: style: Variable 'filename' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/imlib.c:669:23: style: Variable 'devnull' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/imlib.c:1101:10: style: Variable 'len' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/imlib.c:1490:8: style: Variable 'j' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/imlib.c:1621:18: style: Variable 'space_width' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/imlib.c:1621:59: style: Variable 'new_width' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/imlib.c:1714:14: style: Variable 'devnull' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/index.c:82:58: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/index.c:454:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/index.c:481:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PACKAGE [valueFlowBailoutIncompleteVar] feh-3.10.1/src/index.c:354:64: style:inconclusive: Function 'index_calculate_height' argument 4 names different: declaration 'tot_thumb_w' definition 'tot_thumb_h'. [funcArgNamesDifferent] feh-3.10.1/src/index.h:32:64: note: Function 'index_calculate_height' argument 4 names different: declaration 'tot_thumb_w' definition 'tot_thumb_h'. feh-3.10.1/src/index.c:354:64: note: Function 'index_calculate_height' argument 4 names different: declaration 'tot_thumb_w' definition 'tot_thumb_h'. feh-3.10.1/src/index.c:427:63: style:inconclusive: Function 'get_index_string_dim' argument 3 names different: declaration 'w' definition 'fw'. [funcArgNamesDifferent] feh-3.10.1/src/index.h:31:63: note: Function 'get_index_string_dim' argument 3 names different: declaration 'w' definition 'fw'. feh-3.10.1/src/index.c:427:63: note: Function 'get_index_string_dim' argument 3 names different: declaration 'w' definition 'fw'. feh-3.10.1/src/index.c:427:72: style:inconclusive: Function 'get_index_string_dim' argument 4 names different: declaration 'h' definition 'fh'. [funcArgNamesDifferent] feh-3.10.1/src/index.h:31:71: note: Function 'get_index_string_dim' argument 4 names different: declaration 'h' definition 'fh'. feh-3.10.1/src/index.c:427:72: note: Function 'get_index_string_dim' argument 4 names different: declaration 'h' definition 'fh'. feh-3.10.1/src/index.c:310:7: style: Local variable 'fw' shadows outer variable [shadowVariable] feh-3.10.1/src/index.c:53:6: note: Shadowed declaration feh-3.10.1/src/index.c:310:7: note: Shadow variable feh-3.10.1/src/index.c:310:11: style: Local variable 'fh' shadows outer variable [shadowVariable] feh-3.10.1/src/index.c:53:10: note: Shadowed declaration feh-3.10.1/src/index.c:310:11: note: Shadow variable feh-3.10.1/src/index.c:338:8: style: Local variable 'tw' shadows outer variable [shadowVariable] feh-3.10.1/src/index.c:52:6: note: Shadowed declaration feh-3.10.1/src/index.c:338:8: note: Shadow variable feh-3.10.1/src/index.c:338:12: style: Local variable 'th' shadows outer variable [shadowVariable] feh-3.10.1/src/index.c:52:14: note: Shadowed declaration feh-3.10.1/src/index.c:338:12: note: Shadow variable feh-3.10.1/src/index.c:41:27: style: Variable 'ww' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/index.c:41:35: style: Variable 'hh' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/index.c:45:37: style: Variable 'im_thumb' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/index.c:51:18: style: Variable 'text_area_w' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/index.c:360:18: style: Variable 'text_area_w' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/keyevents.c:48:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PARMRK [valueFlowBailoutIncompleteVar] feh-3.10.1/src/keyevents.c:59:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TCSANOW [valueFlowBailoutIncompleteVar] feh-3.10.1/src/keyevents.c:100:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ControlMask [valueFlowBailoutIncompleteVar] feh-3.10.1/src/keyevents.c:142:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XK_Escape [valueFlowBailoutIncompleteVar] feh-3.10.1/src/keyevents.c:262:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NoSymbol [valueFlowBailoutIncompleteVar] feh-3.10.1/src/keyevents.c:321:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NoSymbol [valueFlowBailoutIncompleteVar] feh-3.10.1/src/keyevents.c:382:56: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KeyPress [valueFlowBailoutIncompleteVar] feh-3.10.1/src/keyevents.c:429:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NoSymbol [valueFlowBailoutIncompleteVar] feh-3.10.1/src/keyevents.c:85:57: warning: Either the condition 'keysym>=-128' is redundant or isprint() argument nr 1 can have invalid value. The value is -128 but the valid values are '0:255'. [invalidFunctionArg] feh-3.10.1/src/keyevents.c:85:37: note: Assuming that condition 'keysym>=-128' is not redundant feh-3.10.1/src/keyevents.c:85:57: note: Invalid argument feh-3.10.1/src/keyevents.c:85:77: warning: Either the condition 'keysym>=-128' is redundant or isspace() argument nr 1 can have invalid value. The value is -128 but the valid values are '0:255'. [invalidFunctionArg] feh-3.10.1/src/keyevents.c:85:37: note: Assuming that condition 'keysym>=-128' is not redundant feh-3.10.1/src/keyevents.c:85:77: note: Invalid argument feh-3.10.1/src/keyevents.c:219:48: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/keyevents.c:221:52: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/keyevents.c:373:13: style: Variable 'kev' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/keyevents.c:416:29: style: Parameter 'action' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/keyevents.c:135:11: style: Variable 'read' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/keyevents.c:427:6: style: Variable 'curr_screen' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/list.c:41:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] feh-3.10.1/src/list.c:95:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] feh-3.10.1/src/main.c:236:4: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] feh-3.10.1/src/main.c:142:12: style: Variable 'count' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/menu.c:99:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NotUseful [valueFlowBailoutIncompleteVar] feh-3.10.1/src/menu.c:388:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable InputOnly [valueFlowBailoutIncompleteVar] feh-3.10.1/src/menu.c:595:65: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/menu.c:706:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/menu.c:1359:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WidthValue [valueFlowBailoutIncompleteVar] feh-3.10.1/src/menu.c:308:40: style:inconclusive: Function 'feh_menu_item_activate' argument 1 names different: declaration 'selected_menu' definition 'm'. [funcArgNamesDifferent] feh-3.10.1/src/menu.h:164:40: note: Function 'feh_menu_item_activate' argument 1 names different: declaration 'selected_menu' definition 'm'. feh-3.10.1/src/menu.c:308:40: note: Function 'feh_menu_item_activate' argument 1 names different: declaration 'selected_menu' definition 'm'. feh-3.10.1/src/menu.c:308:59: style:inconclusive: Function 'feh_menu_item_activate' argument 2 names different: declaration 'selected_item' definition 'i'. [funcArgNamesDifferent] feh-3.10.1/src/menu.h:164:71: note: Function 'feh_menu_item_activate' argument 2 names different: declaration 'selected_item' definition 'i'. feh-3.10.1/src/menu.c:308:59: note: Function 'feh_menu_item_activate' argument 2 names different: declaration 'selected_item' definition 'i'. feh-3.10.1/src/menu.c:411:50: style:inconclusive: Function 'feh_menu_show_at_xy' argument 2 names different: declaration 'winwin' definition 'winwid'. [funcArgNamesDifferent] feh-3.10.1/src/menu.h:128:50: note: Function 'feh_menu_show_at_xy' argument 2 names different: declaration 'winwin' definition 'winwid'. feh-3.10.1/src/menu.c:411:50: note: Function 'feh_menu_show_at_xy' argument 2 names different: declaration 'winwin' definition 'winwid'. feh-3.10.1/src/menu.c:445:82: style: Parameter 'i' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/menu.c:772:31: style: Parameter 'name' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/menu.c:1169:18: style: Variable 'curr_screen' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/multiwindow.c:39:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PACKAGE [valueFlowBailoutIncompleteVar] feh-3.10.1/src/options.c:1008:15: error: There is an unknown macro here somewhere. Configuration is required. If PACKAGE is a macro then please configure it. [unknownMacro] feh-3.10.1/src/slideshow.c:100:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PACKAGE [valueFlowBailoutIncompleteVar] feh-3.10.1/src/slideshow.c:387:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] feh-3.10.1/src/slideshow.c:645:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] feh-3.10.1/src/slideshow.c:626:46: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/slideshow.c:633:34: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/slideshow.c:382:9: style: Variable 'sys' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/slideshow.c:397:7: style: Variable 'units' can be declared as const array [constVariable] feh-3.10.1/src/thumbnail.c:112:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/thumbnail.c:510:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IMLIB_TEXT_TO_RIGHT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/thumbnail.c:604:65: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/thumbnail.c:608:63: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/thumbnail.c:624:46: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/thumbnail.c:647:43: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/thumbnail.c:650:40: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/thumbnail.c:717:66: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/thumbnail.c:426:45: style:inconclusive: Function 'feh_thumbnail_new' argument 1 names different: declaration 'fil' definition 'file'. [funcArgNamesDifferent] feh-3.10.1/src/thumbnail.h:68:45: note: Function 'feh_thumbnail_new' argument 1 names different: declaration 'fil' definition 'file'. feh-3.10.1/src/thumbnail.c:426:45: note: Function 'feh_thumbnail_new' argument 1 names different: declaration 'fil' definition 'file'. feh-3.10.1/src/thumbnail.c:105:7: style: Local variable 'fh' shadows outer variable [shadowVariable] feh-3.10.1/src/thumbnail.c:68:10: note: Shadowed declaration feh-3.10.1/src/thumbnail.c:105:7: note: Shadow variable feh-3.10.1/src/thumbnail.c:105:11: style: Local variable 'fw' shadows outer variable [shadowVariable] feh-3.10.1/src/thumbnail.c:68:6: note: Shadowed declaration feh-3.10.1/src/thumbnail.c:105:11: note: Shadow variable feh-3.10.1/src/thumbnail.c:369:7: style: Local variable 'fw' shadows outer variable [shadowVariable] feh-3.10.1/src/thumbnail.c:68:6: note: Shadowed declaration feh-3.10.1/src/thumbnail.c:369:7: note: Shadow variable feh-3.10.1/src/thumbnail.c:369:11: style: Local variable 'fh' shadows outer variable [shadowVariable] feh-3.10.1/src/thumbnail.c:68:10: note: Shadowed declaration feh-3.10.1/src/thumbnail.c:369:11: note: Shadow variable feh-3.10.1/src/thumbnail.c:398:8: style: Local variable 'tw' shadows outer variable [shadowVariable] feh-3.10.1/src/thumbnail.c:67:6: note: Shadowed declaration feh-3.10.1/src/thumbnail.c:398:8: note: Shadow variable feh-3.10.1/src/thumbnail.c:398:12: style: Local variable 'th' shadows outer variable [shadowVariable] feh-3.10.1/src/thumbnail.c:67:14: note: Shadowed declaration feh-3.10.1/src/thumbnail.c:398:12: note: Shadow variable feh-3.10.1/src/thumbnail.c:475:55: style: Parameter 'file' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/thumbnail.c:681:9: style: Parameter 'thumb_file' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/thumbnail.c:740:65: style: Parameter 'file' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/thumbnail.c:744:8: style: Variable 'c_mtime' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/thumbnail.c:745:8: style: Variable 'c_width' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/thumbnail.c:745:18: style: Variable 'c_height' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/thumbnail.c:843:17: style: Variable 'thumb' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/thumbnail.c:865:17: style: Variable 'thumb' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/thumbnail.c:60:9: style: Variable 'ww' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/thumbnail.c:60:17: style: Variable 'hh' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/thumbnail.c:64:23: style: Variable 'im_thumb' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/timers.c:46:6: style: Condition 'ft' is always true [knownConditionTrueFalse] feh-3.10.1/src/timers.c:48:6: style: Condition 'ft' is always true [knownConditionTrueFalse] feh-3.10.1/src/timers.c:61:37: style: Parameter 'data' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/timers.c:91:36: style: Parameter 'name' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/utils.c:35:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] feh-3.10.1/src/utils.c:53:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] feh-3.10.1/src/utils.c:180:70: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/utils.c:104:17: style: Variable 's' can be declared as pointer to const [constVariablePointer] feh-3.10.1/src/utils.c:146:24: style: Parameter 'path' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/utils.c:187:23: style: Parameter 'path' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/utils.c:208:26: style: Parameter 'input' can be declared as pointer to const [constParameterPointer] feh-3.10.1/src/wallpaper.c:110:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XValue [valueFlowBailoutIncompleteVar] feh-3.10.1/src/wallpaper.c:163:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XValue [valueFlowBailoutIncompleteVar] feh-3.10.1/src/wallpaper.c:218:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XValue [valueFlowBailoutIncompleteVar] feh-3.10.1/src/wallpaper.c:303:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XValue [valueFlowBailoutIncompleteVar] feh-3.10.1/src/wallpaper.c:380:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/wallpaper.c:625:58: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/wallpaper.c:678:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/wallpaper.c:769:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/wallpaper.c:821:51: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ClientMessage [valueFlowBailoutIncompleteVar] feh-3.10.1/src/wallpaper.c:880:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/wallpaper.c:652:15: warning: Either the condition 'ptr' is redundant or there is possible null pointer dereference: ptr. [nullPointerRedundantCheck] feh-3.10.1/src/wallpaper.c:650:9: note: Assuming that condition 'ptr' is not redundant feh-3.10.1/src/wallpaper.c:652:15: note: Null pointer dereference feh-3.10.1/src/wallpaper.c:271:37: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/wallpaper.c:349:7: style:inconclusive: Function 'feh_wm_set_bg' argument 5 names different: declaration 'fill' definition 'filled'. [funcArgNamesDifferent] feh-3.10.1/src/wallpaper.h:51:7: note: Function 'feh_wm_set_bg' argument 5 names different: declaration 'fill' definition 'filled'. feh-3.10.1/src/wallpaper.c:349:7: note: Function 'feh_wm_set_bg' argument 5 names different: declaration 'fill' definition 'filled'. feh-3.10.1/src/wallpaper.c:349:32: style:inconclusive: Function 'feh_wm_set_bg' argument 7 names different: declaration 'for_screen' definition 'use_filelist'. [funcArgNamesDifferent] feh-3.10.1/src/wallpaper.h:51:30: note: Function 'feh_wm_set_bg' argument 7 names different: declaration 'for_screen' definition 'use_filelist'. feh-3.10.1/src/wallpaper.c:349:32: note: Function 'feh_wm_set_bg' argument 7 names different: declaration 'for_screen' definition 'use_filelist'. feh-3.10.1/src/wallpaper.c:306:33: style: Clarify calculation precedence for '&' and '?'. [clarifyCalculation] feh-3.10.1/src/wallpaper.c:310:34: style: Clarify calculation precedence for '&' and '?'. [clarifyCalculation] feh-3.10.1/src/wallpaper.c:423:15: style: Unused variable: i [unusedVariable] feh-3.10.1/src/winwidget.c:74:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:162:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:387:4: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PropModeReplace [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:422:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:497:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XValue [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:616:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:654:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:683:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:703:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable None [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:853:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable StructureNotifyMask [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:925:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WidthValue [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:1019:66: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XCNOENT [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:1108:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WidthValue [valueFlowBailoutIncompleteVar] feh-3.10.1/src/winwidget.c:226:48: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] feh-3.10.1/src/winwidget.c:120:49: style:inconclusive: Function 'winwidget_create_from_file' argument 1 names different: declaration 'filename' definition 'list'. [funcArgNamesDifferent] feh-3.10.1/src/winwidget.h:153:49: note: Function 'winwidget_create_from_file' argument 1 names different: declaration 'filename' definition 'list'. feh-3.10.1/src/winwidget.c:120:49: note: Function 'winwidget_create_from_file' argument 1 names different: declaration 'filename' definition 'list'. feh-3.10.1/src/winwidget.c:827:54: style:inconclusive: Function 'winwidget_loadimage' argument 2 names different: declaration 'filename' definition 'file'. [funcArgNamesDifferent] feh-3.10.1/src/winwidget.h:130:54: note: Function 'winwidget_loadimage' argument 2 names different: declaration 'filename' definition 'file'. feh-3.10.1/src/winwidget.c:827:54: note: Function 'winwidget_loadimage' argument 2 names different: declaration 'filename' definition 'file'. feh-3.10.1/src/winwidget.c:1062:39: style:inconclusive: Function 'feh_debug_print_winwid' argument 1 names different: declaration 'winwid' definition 'w'. [funcArgNamesDifferent] feh-3.10.1/src/winwidget.h:160:39: note: Function 'feh_debug_print_winwid' argument 1 names different: declaration 'winwid' definition 'w'. feh-3.10.1/src/winwidget.c:1062:39: note: Function 'feh_debug_print_winwid' argument 1 names different: declaration 'winwid' definition 'w'. feh-3.10.1/src/winwidget.c:1090:39: style:inconclusive: Function 'winwidget_center_image' argument 1 names different: declaration 'w' definition 'winwid'. [funcArgNamesDifferent] feh-3.10.1/src/winwidget.h:136:39: note: Function 'winwidget_center_image' argument 1 names different: declaration 'w' definition 'winwid'. feh-3.10.1/src/winwidget.c:1090:39: note: Function 'winwidget_center_image' argument 1 names different: declaration 'w' definition 'winwid'. feh-3.10.1/src/winwidget.c:655:21: style: Variable 'checks' is assigned a value that is never used. [unreadVariable] feh-3.10.1/src/winwidget.c:887:18: style: Unused variable: px [unusedVariable] feh-3.10.1/src/winwidget.c:887:22: style: Unused variable: py [unusedVariable] feh-3.10.1/src/winwidget.c:893:6: style: Unused variable: di [unusedVariable] feh-3.10.1/src/winwidget.c:893:10: style: Unused variable: i [unusedVariable] feh-3.10.1/src/winwidget.c:894:15: style: Unused variable: du [unusedVariable] diff: DONE