2026-01-16 06:03 ftp://ftp.de.debian.org/debian/pool/main/d/dhex/dhex_0.69.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j90 platform: Linux-6.8.0-90-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.69 compiler: g++ (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 cppcheck: head 2.19.0 head-info: a8f83c1 (2026-01-15 10:50:53 +0100) count: 81 81 elapsed-time: 1.2 6.7 head-timing-info: old-timing-info: head results: dhex_0.69/buffers.c:81:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable OK [valueFlowBailoutIncompleteVar] dhex_0.69/correlation.c:22:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/correlation.c:110:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/correlation.c:187:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/correlation.c:260:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ERR [valueFlowBailoutIncompleteVar] dhex_0.69/hexcalc.c:28:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/ui.c:22:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/ui.c:118:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/ui.c:152:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/markers.c:118:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/menu.c:64:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/menu.c:105:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/menu.c:146:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/menu.c:187:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/configfile.c:144:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable A_BOLD [valueFlowBailoutIncompleteVar] dhex_0.69/buffers.c:14:51: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] dhex_0.69/input.c:50:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ERR [valueFlowBailoutIncompleteVar] dhex_0.69/output.c:12:37: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLOR_BLACK [valueFlowBailoutIncompleteVar] dhex_0.69/output.c:55:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ACS_ULCORNER [valueFlowBailoutIncompleteVar] dhex_0.69/output.c:80:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LINES [valueFlowBailoutIncompleteVar] dhex_0.69/output.c:94:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/output.c:207:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/output.c:435:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LINES [valueFlowBailoutIncompleteVar] dhex_0.69/output.c:459:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COLS [valueFlowBailoutIncompleteVar] dhex_0.69/menu.c:15:36: style: Parameter 'text' can be declared as pointer to const [constParameterPointer] dhex_0.69/gpl.c:7:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] dhex_0.69/gpl.c:559:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] dhex_0.69/configfile.c:77:37: style: Parameter 'line' can be declared as pointer to const [constParameterPointer] dhex_0.69/configfile.c:171:42: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] dhex_0.69/configfile.c:98:24: style: Variable 'c' is assigned a value that is never used. [unreadVariable] dhex_0.69/search.c:16:9: style:inconclusive: Same expression used in consecutive assignments of 'actcursorpos' and 'oldcursorpos'. [duplicateAssignExpression] dhex_0.69/search.c:17:9: note: Same expression used in consecutive assignments of 'actcursorpos' and 'oldcursorpos'. dhex_0.69/search.c:16:9: note: Same expression used in consecutive assignments of 'actcursorpos' and 'oldcursorpos'. dhex_0.69/search.c:75:16: style: Variable 'state' is assigned a value that is never used. [unreadVariable] dhex_0.69/main.c:24:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] dhex_0.69/main.c:49:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] dhex_0.69/main.c:164:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] dhex_0.69/main.c:438:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] dhex_0.69/output.c:328:11: style: Variable 'oldcolor' is assigned a value that is never used. [unreadVariable] dhex_0.69/input.c:72:5: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] dhex_0.69/input.c:479:10: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] dhex_0.69/input.c:116:3: portability: %lli in format string (no. 1) requires 'long long' but the argument type is 'tUInt64 {aka unsigned long long}'. [invalidPrintfArgType_sint] dhex_0.69/input.c:210:9: warning: If memory allocation fails, then there is a possible null pointer dereference: buf [nullPointerOutOfMemory] dhex_0.69/input.c:209:12: note: Assuming allocation function fails dhex_0.69/input.c:209:12: note: Assignment 'buf=malloc(len)', assigned value is 0 dhex_0.69/input.c:210:9: note: Null pointer dereference dhex_0.69/input.c:271:9: warning: If memory allocation fails, then there is a possible null pointer dereference: buf [nullPointerOutOfMemory] dhex_0.69/input.c:270:12: note: Assuming allocation function fails dhex_0.69/input.c:270:12: note: Assignment 'buf=malloc(len)', assigned value is 0 dhex_0.69/input.c:271:9: note: Null pointer dereference dhex_0.69/input.c:284:49: warning: If memory allocation fails, then there is a possible null pointer dereference: buf [nullPointerOutOfMemory] dhex_0.69/input.c:270:12: note: Assuming allocation function fails dhex_0.69/input.c:270:12: note: Assignment 'buf=malloc(len)', assigned value is 0 dhex_0.69/input.c:284:49: note: Null pointer dereference dhex_0.69/input.c:284:55: warning: If memory allocation fails, then there is a possible null pointer dereference: buf [nullPointerOutOfMemory] dhex_0.69/input.c:270:12: note: Assuming allocation function fails dhex_0.69/input.c:270:12: note: Assignment 'buf=malloc(len)', assigned value is 0 dhex_0.69/input.c:284:55: note: Null pointer dereference dhex_0.69/input.c:70:9: style: Variable 'done' is reassigned a value before the old one has been used. [redundantAssignment] dhex_0.69/input.c:65:51: note: done is assigned dhex_0.69/input.c:70:9: note: done is overwritten dhex_0.69/input.c:321:41: style: Parameter 'line' can be declared as pointer to const [constParameterPointer] dhex_0.69/input.c:351:43: style: Parameter 'configfilename' can be declared as pointer to const [constParameterPointer] dhex_0.69/input.c:362:11: style: Variable 'pKeyTab' can be declared as pointer to const [constVariablePointer] dhex_0.69/input.c:188:6: warning: Uninitialized variable: ch [uninitvar] dhex_0.69/input.c:152:9: note: Assuming condition is false dhex_0.69/input.c:188:6: note: Uninitialized variable: ch dhex_0.69/input.c:58:7: style: Variable 'exact' is assigned a value that is never used. [unreadVariable] dhex_0.69/input.c:419:8: style: Variable 'ch' is assigned a value that is never used. [unreadVariable] dhex_0.69/input.c:420:13: style: Variable 'lastkey' is assigned a value that is never used. [unreadVariable] dhex_0.69/markers.c:18:3: warning: If memory allocation fails, then there is a possible null pointer dereference: p [nullPointerOutOfMemory] dhex_0.69/markers.c:15:10: note: Assuming allocation function fails dhex_0.69/markers.c:15:10: note: Assignment 'p=malloc(sizeof(struct tMarkers))', assigned value is 0 dhex_0.69/markers.c:18:3: note: Null pointer dereference dhex_0.69/markers.c:19:3: warning: If memory allocation fails, then there is a possible null pointer dereference: p [nullPointerOutOfMemory] dhex_0.69/markers.c:15:10: note: Assuming allocation function fails dhex_0.69/markers.c:15:10: note: Assignment 'p=malloc(sizeof(struct tMarkers))', assigned value is 0 dhex_0.69/markers.c:19:3: note: Null pointer dereference dhex_0.69/markers.c:101:10: style:inconclusive: Same expression used in consecutive assignments of 'actcursorpos' and 'newcursorpos'. [duplicateAssignExpression] dhex_0.69/markers.c:102:10: note: Same expression used in consecutive assignments of 'actcursorpos' and 'newcursorpos'. dhex_0.69/markers.c:101:10: note: Same expression used in consecutive assignments of 'actcursorpos' and 'newcursorpos'. dhex_0.69/markers.c:24:45: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] dhex_0.69/markers.c:80:31: style: Parameter 'markers' can be declared as pointer to const [constParameterPointer] dhex_0.69/markers.c:80:45: style: Parameter 'filename' can be declared as pointer to const [constParameterPointer] dhex_0.69/markers.c:154:10: style: Variable 'selected' is assigned a value that is never used. [unreadVariable] dhex_0.69/hexcalc.c:161:19: style: The statement 'if (cursorline!=-1) cursorline=-1' is logically equivalent to 'cursorline=-1'. [duplicateConditionalAssign] dhex_0.69/hexcalc.c:161:35: note: Assignment 'cursorline=-1' dhex_0.69/hexcalc.c:161:19: note: Condition 'cursorline!=-1' is redundant dhex_0.69/hexcalc.c:95:12: style: Condition 'neg' is always true [knownConditionTrueFalse] dhex_0.69/hexcalc.c:94:12: note: Assuming that condition '!neg' is not redundant dhex_0.69/hexcalc.c:95:12: note: Condition 'neg' is always true dhex_0.69/hexcalc.c:147:21: style: Condition 'cursorline!=-1' is always false [knownConditionTrueFalse] dhex_0.69/hexcalc.c:124:19: note: Assignment 'cursorline=-1', assigned value is -1 dhex_0.69/hexcalc.c:147:21: note: Condition 'cursorline!=-1' is always false dhex_0.69/gpl.c:6:8: style: Variable 'ptr' can be declared as pointer to const [constVariablePointer] dhex_0.69/main.c:449:7: error: Dereferencing 'output' after it is deallocated / released [deallocuse] dhex_0.69/main.c:451:8: error: Dereferencing 'output' after it is deallocated / released [deallocuse] dhex_0.69/main.c:451:25: error: Memory pointed to by 'pKeyTab' is freed twice. [doubleFree] dhex_0.69/main.c:425:25: note: Memory pointed to by 'pKeyTab' is freed twice. dhex_0.69/main.c:451:25: note: Memory pointed to by 'pKeyTab' is freed twice. dhex_0.69/main.c:452:4: error: Memory pointed to by 'output' is freed twice. [doubleFree] dhex_0.69/main.c:426:4: note: Memory pointed to by 'output' is freed twice. dhex_0.69/main.c:452:4: note: Memory pointed to by 'output' is freed twice. dhex_0.69/main.c:454:7: error: Dereferencing 'markers' after it is deallocated / released [deallocuse] dhex_0.69/main.c:454:16: error: Memory pointed to by 'markers' is freed twice. [doubleFree] dhex_0.69/main.c:428:16: note: Memory pointed to by 'markers' is freed twice. dhex_0.69/main.c:454:16: note: Memory pointed to by 'markers' is freed twice. dhex_0.69/main.c:411:9: warning: If memory allocation fails, then there is a possible null pointer dereference: output [nullPointerOutOfMemory] dhex_0.69/main.c:410:15: note: Assuming allocation function fails dhex_0.69/main.c:410:15: note: Assignment 'output=malloc(sizeof(struct tOutput))', assigned value is 0 dhex_0.69/main.c:411:9: note: Null pointer dereference dhex_0.69/main.c:497:9: warning: If memory allocation fails, then there is a possible null pointer dereference: hHexCalc [nullPointerOutOfMemory] dhex_0.69/main.c:496:17: note: Assuming allocation function fails dhex_0.69/main.c:496:17: note: Assignment 'hHexCalc=malloc(sizeof(struct thHexCalc))', assigned value is 0 dhex_0.69/main.c:497:9: note: Null pointer dereference dhex_0.69/main.c:501:10: warning: If memory allocation fails, then there is a possible null pointer dereference: buf1 [nullPointerOutOfMemory] dhex_0.69/main.c:500:14: note: Assuming allocation function fails dhex_0.69/main.c:500:14: note: Assignment 'buf1=malloc(sizeof(struct tBuffer))', assigned value is 0 dhex_0.69/main.c:501:10: note: Null pointer dereference dhex_0.69/main.c:502:3: warning: If memory allocation fails, then there is a possible null pointer dereference: buf1 [nullPointerOutOfMemory] dhex_0.69/main.c:500:14: note: Assuming allocation function fails dhex_0.69/main.c:500:14: note: Assignment 'buf1=malloc(sizeof(struct tBuffer))', assigned value is 0 dhex_0.69/main.c:502:3: note: Null pointer dereference dhex_0.69/main.c:506:11: warning: If memory allocation fails, then there is a possible null pointer dereference: buf2 [nullPointerOutOfMemory] dhex_0.69/main.c:505:15: note: Assuming allocation function fails dhex_0.69/main.c:505:15: note: Assignment 'buf2=malloc(sizeof(struct tBuffer))', assigned value is 0 dhex_0.69/main.c:506:11: note: Null pointer dereference dhex_0.69/main.c:507:4: warning: If memory allocation fails, then there is a possible null pointer dereference: buf2 [nullPointerOutOfMemory] dhex_0.69/main.c:505:15: note: Assuming allocation function fails dhex_0.69/main.c:505:15: note: Assignment 'buf2=malloc(sizeof(struct tBuffer))', assigned value is 0 dhex_0.69/main.c:507:4: note: Null pointer dereference dhex_0.69/main.c:178:7: style: Statements following noreturn function 'exit()' will never be executed. [unreachableCode] dhex_0.69/main.c:250:14: style: Local variable 'j' shadows outer variable [shadowVariable] dhex_0.69/main.c:222:12: note: Shadowed declaration dhex_0.69/main.c:250:14: note: Shadow variable dhex_0.69/main.c:22:26: style: Parameter 'argv0' can be declared as pointer to const [constParameterPointer] dhex_0.69/main.c:90:64: style: Parameter 'lastopt' can be declared as pointer to const [constParameterPointer] dhex_0.69/main.c:90:78: style: Parameter 'argv' can be declared as pointer to const [constParameterPointer] dhex_0.69/main.c:404:8: style: Variable 'homedir' can be declared as pointer to const [constVariablePointer] diff: DONE