Daniel Marjamäki
8fa26fbd28
Memory leaks: Optimised and refactored
2011-01-16 09:56:04 +01:00
Zachary Blair
38be7056b0
Fixed #2434 (FP memleakOnRealloc)
2011-01-12 22:33:46 -08:00
Daniel Marjamäki
09f900ce79
Fixed #2440 (False negative: basic memory leak)
2011-01-11 20:14:15 +01:00
Daniel Marjamäki
2d92f1ff6a
Fixed #2442 (False positive: Memory leak when function returns in 'if' instead of 'else if')
2011-01-10 19:35:06 +01:00
Reijo Tomperi
226b605774
Change year 2010 -> 2011 in license texts.
2011-01-09 21:33:36 +02:00
Daniel Marjamäki
67a1c6817b
Error message: Replace " with ' around variable name
2011-01-08 14:35:18 +01:00
Raphael Geissert
2b1ec9a07f
Mention the name of the variable in the inconclusive leak msg
2011-01-03 20:40:31 -06:00
Daniel Marjamäki
b5876f00ff
Fixed #2391 (cstdlib file and memory function check misbehavior)
2011-01-02 08:32:51 +01:00
Daniel Marjamäki
2a77dd3df1
Fixed #2246 (Improve check: Memory leak, function is not noreturn if return value is taken)
2011-01-01 20:14:01 +01:00
Daniel Marjamäki
3eabb4ebe0
Added comments in the memory leaks checking
2011-01-01 13:28:34 +01:00
Daniel Marjamäki
0cc49188c0
Memory leaks: localized variables
2011-01-01 12:27:57 +01:00
Daniel Marjamäki
3d3593e6e7
Fixed #2374 (False 'memory leak' report (assigning to map in subfunction))
2010-12-29 22:18:23 +01:00
Daniel Marjamäki
00e9822cb3
Fixed #2337 (False Positive: memory leak)
2010-12-22 18:32:00 +01:00
Daniel Marjamäki
6951c32683
Fixed #2336 (False positive: memory leak (passing pointer to subfunction))
2010-12-21 21:12:45 +01:00
Daniel Marjamäki
814efb2512
Fixed #2313 (False Positive: memory leak)
2010-12-17 21:34:22 +01:00
Daniel Marjamäki
49ee1533d9
Fixed #2301 (false positive: The given size 3 is mismatching)
2010-12-16 21:27:33 +01:00
vBm
46a11183a5
Fixed some spelling mistakes
2010-12-15 18:45:53 +01:00
Robert Reif
4d2c210f2a
Symbol database: use in checkmemoryleaks.cpp. ticket: #2219
2010-12-09 06:15:01 +01:00
Daniel Marjamäki
cad9c5f232
Fixed #2285 (False Positive: memory leak)
2010-12-08 21:02:02 +01:00
Robert Reif
c6e67d4aad
Symbol database: use symbol database in the memory leaks function checking. Ticket: #2219
2010-12-08 07:49:01 +01:00
Robert Reif
b6acfa809b
Symbol database: creates a single symbol database within Tokenizer on demand and changes all checks to use it
2010-12-07 07:08:49 +01:00
Robert Reif
271d8988aa
Symbol database: fixed a TODO test where class variables were qualified with the class name
2010-12-07 07:07:36 +01:00
Robert Reif
6c719c5806
Symbol database: removed unnecessary null pointer checks
2010-12-07 07:07:07 +01:00
Daniel Marjamäki
26864dd011
Memory leaks: Removed the experimental checking using ExecutionPath.
2010-12-06 21:46:18 +01:00
Robert Reif
626a814241
Symbol database: better handling of inline functions. Ticket: #2219
2010-12-05 20:26:52 +01:00
Robert Reif
758fc85a12
Memory leaks: Determine that some classes are not auto-deallocated. Reduce false negatives. Ticket: #2219 and #1618
2010-12-04 07:29:12 +01:00
Daniel Marjamäki
0081800a20
Fixed #2261 (False positive: memory leak)
2010-11-30 19:36:04 +01:00
Daniel Marjamäki
6761765a70
Fixed #2262 (False positive: Resource leak: fd)
2010-11-30 19:14:31 +01:00
Daniel Marjamäki
4de64209fb
Fixed #2248 (memory leak : pointer inserted in an object)
2010-11-29 19:53:34 +01:00
Daniel Marjamäki
03a92582ca
Fixed #2235 (false Resource leak)
2010-11-27 11:09:42 +01:00
Robert Reif
88a1448a07
Symbol database: refactor CheckMemoryLeakInClass::checkPublicFunctions to use the symbol database. Ticket: #2219
2010-11-25 21:04:49 +01:00
Robert Reif
1842a122da
reuse symbol database in checkmemoryleak.cpp. ticket: #2219
2010-11-23 18:41:07 +01:00
Daniel Marjamäki
9ccc57a455
Fixed #2214 (Improve check: Memory leak not detected when pointer is incremented)
2010-11-20 08:35:23 +01:00
Daniel Marjamäki
f7ca4f09ef
Fixed #2151 (false negative: memory leak when calling subfunction that doesn't deallocate the memory)
2010-11-12 21:09:34 +01:00
Daniel Marjamäki
0328d26fcb
Fixed #2192 (false positive: resource leak)
2010-11-11 17:40:20 +01:00
Daniel Marjamäki
41bbe5d0cf
Fixed #2182 (Context sensitive false positive)
2010-11-10 18:24:40 +01:00
Daniel Marjamäki
28c53cabea
Fixed #2184 (False Positive: memory leak)
2010-11-10 17:46:40 +01:00
Daniel Marjamäki
23d3fd3a5a
Fixed #2147 (uninitialized variable: false negative for 'x += y;')
2010-10-31 08:47:13 +01:00
Daniel Marjamäki
27235f27ae
Fixed #2129 (Invalid dereference after release report)
2010-10-26 17:49:48 +02:00
Daniel Marjamäki
41a06a21d9
using deallocated pointer: detect first problem reported in ticket #2090
2010-10-25 17:36:46 +02:00
Daniel Marjamäki
eba827bc4b
Fixed #2112 (Crash scanning qtcreator sources)
2010-10-21 19:42:09 +02:00
Daniel Marjamäki
68dd2f8378
Fixed #2113 (False positive: Memory leak where a pointer is passed in a struct to another function to be freed)
2010-10-20 18:39:40 +02:00
Daniel Marjamäki
92a1e9e76e
Severities: Added 'warning' and 'performance' severities. No changes to the command line options nor to the XML format. Ticket: #2106
2010-10-17 14:41:00 +02:00
Daniel Marjamäki
80069f016e
Fixed #2065 (false positive: memory leak)
2010-09-27 17:53:10 +02:00
Pete Johns
6a52538a9a
Fixed #1949 : assert() hides memory leaks
...
Added separate unit-test (trac1949), initially broken to highlight the error and added "assert" to call_func_white_list.
Left TestMemleakInFunction::call_func() as is, as this wouldn't highlight the actual problem.
2010-09-27 20:25:34 +10:00
Daniel Marjamäki
78bd66cd5c
Fixed #2056 (False positive: Resource leak)
2010-09-19 12:16:29 +02:00
Daniel Marjamäki
84d9282da2
Memory leaks: remove redundant 'if return ; else|'
2010-09-12 21:41:13 +02:00
Daniel Marjamäki
5a95303405
Memory leaks: reduce 'loop { if continue ;' to 'loop {'
2010-09-12 21:15:19 +02:00
Daniel Marjamäki
0a30aba2e6
Memory leaks: insert ';' in the simplifycode to split up the commands
2010-09-12 21:04:05 +02:00
Daniel Marjamäki
9c4a05a3bd
Memory leaks: simplify 'loop { use ; callfunc ; }' to 'use ;'
2010-09-12 20:45:30 +02:00
Daniel Marjamäki
ceeef847ef
Memory leaks: simplify 'if break ; break ;'
2010-09-11 21:48:40 +02:00
Daniel Marjamäki
7aa0504692
Memory leaks: simplify 'use use'
2010-09-11 21:32:21 +02:00
Daniel Marjamäki
424fe064cb
Memory leaks: don't write debug warning for '; alloc ; dealloc ; return ; }'
2010-09-11 21:14:20 +02:00
Daniel Marjamäki
d4e045cee5
Memory leaks: fixed try/catch and nested loops simplifications
2010-09-11 21:07:35 +02:00
Daniel Marjamäki
4064712baa
Memory leaks: improved simplification for 'callfunc'
2010-09-11 20:49:24 +02:00
Daniel Marjamäki
73122c3e8a
Memory leaks: Improved the simplifycode for 'use ; if| use ;'
2010-09-11 20:18:16 +02:00
Daniel Marjamäki
ecd863700e
Fixed #2023 (false positive with realloc())
2010-09-11 11:15:04 +02:00
Daniel Marjamäki
80be31de13
Fixed #2037 (memleak not detected in exit path when variable used)
2010-09-08 20:03:22 +02:00
Daniel Marjamäki
8e746ca53f
CheckMemoryleaks: reduce 'use ; if return ; dealloc ;' to 'if return ; dealloc ;'. ticket: #2037
2010-09-08 19:22:03 +02:00
Daniel Marjamäki
beb4dddb2e
Refactoring CheckMemoryLeaks
2010-09-04 10:06:34 +02:00
Daniel Marjamäki
fb4fce466e
Fixed #2014 (False positive with longjmp)
2010-09-03 07:18:01 +02:00
Daniel Marjamäki
d45186d645
Added --debug-warnings that we can use to enable various debug warnings
2010-08-27 20:28:00 +02:00
Daniel Marjamäki
ca407110dc
Fixed #1936 (Internal error. Token::Match called with varid 0.)
2010-08-24 20:58:22 +02:00
Daniel Marjamäki
225114df1c
Fixed #1960 (cppcheck hangs with 100% cpu load)
2010-08-24 20:50:04 +02:00
Daniel Marjamäki
12217461a2
gcc: fixed some more -Wsign-conversion warnings
2010-08-06 22:37:48 +02:00
Daniel Marjamäki
7fb44d1995
gcc: fixed some compiler warnings when using -Wsign-conversion
2010-08-06 18:32:31 +02:00
Daniel Marjamäki
f5823f7747
Visual Studio: Fixed warnings
2010-08-06 17:32:16 +02:00
Daniel Marjamäki
eedb5e383e
Memory leaks: better handling of 'return strcmp(..' etc
2010-08-05 21:23:32 +02:00
Daniel Marjamäki
9d24c9ceaa
Memory leaks: refactoring return handling
2010-08-04 23:01:32 +02:00
Daniel Marjamäki
6d94c4f15e
Memory leaks: don't translate 'return p[10];' to 'return use ;'
2010-08-04 20:48:20 +02:00
Daniel Marjamäki
6700351ede
Fixed #1833 (memory leak detected in version 1.37 not detected in 1.43)
2010-08-02 23:04:23 +02:00
Daniel Marjamäki
ff9d3d0965
memory leaks: better handling of 'loop { dealloc ; alloc ; }'
2010-08-02 22:17:09 +02:00
Daniel Marjamäki
ae0252dc91
memory leaks: simplify 'callfunc ; ;'
2010-08-02 21:59:47 +02:00
Daniel Marjamäki
df44703ee9
memory leaks: better checking of function calls. If there are statements after the function call it is unlikely the function call is noreturn
2010-08-02 21:56:50 +02:00
Daniel Marjamäki
694325d51f
Fixed #1912 (False positive: memory leak (calling noreturn function))
2010-07-30 08:50:10 +02:00
Zachary Blair
9f44d9eb62
Fixed #1889 (false positive: Common realloc mistake)
2010-07-26 23:17:27 -07:00
Daniel Marjamäki
5c771adece
Refactoring: Use Check::reportError instead of writing to std::cout. Ticket: #1839
2010-07-23 22:53:29 +02:00
Daniel Marjamäki
3c376047ba
pulled changes from kimmov (filelocation-refactor)
2010-07-19 18:06:49 +02:00
Zachary Blair
9ffd06ff5e
Fixed #1856 (false positive: "pData" nulled but not freed upon failure)
2010-07-18 23:55:39 -07:00
Kimmo Varis
6db365e6f7
Improve path name handling in ErrorLogger.
...
This commit adds setfile() method to FileLocation class. The setfile
method converts in Windows path separators to internally used Unix
separators. And getfile() converts path separators back to Windows
separators. This fixes bugs that error reports had mixed path
separators in paths.
2010-07-17 01:27:40 +03:00
Kimmo Varis
ad0394939a
Refactor ErrorMessage constructor to take Severity::SeverityType.
...
This removes lots of unneeded casting as everybody now uses the
Severity::SeverityType.
2010-07-14 23:11:32 +03:00
Kimmo Varis
05adb285c5
Rename Severity::stringify() to Severity::toString().
2010-07-14 17:40:18 +03:00
Kimmo Varis
3716b3f9d8
Rename Severity::e to Severity::SeverityType.
2010-07-14 17:30:03 +03:00
Daniel Marjamäki
49626e427e
Realloc: changed the error message. I think it's better to mention realloc in the message.
2010-07-07 20:28:15 +02:00
Daniel Marjamäki
dc2a0a6468
Fixed #1789 (false positive: memory leak (reallocation in subfunction through parameter))
2010-07-06 21:36:50 +02:00
Daniel Marjamäki
ae3557fa92
Fixed #1820 (False positive: memory leak (auto deallocated class))
2010-07-05 14:01:25 +02:00
Daniel Marjamäki
3205775eb9
Fixed #1790 (mismatching allocation/deallocation false positive)
2010-06-30 09:21:15 +02:00
Daniel Marjamäki
d22da6088c
Fixed #1800 (false positive: memory leak when ptr used as map key)
2010-06-21 18:43:28 +02:00
Leandro Lisboa Penz
58a872e6a0
Fixed #1789 (false positive: memory leak (reallocation in subfunction through parameter))
...
Detecting reallocations in the other function.
2010-06-16 22:29:55 -03:00
Daniel Marjamäki
8a6f4254e0
Fixed #853 (False positive: memory leak for member variable with unknown function)
2010-06-16 19:28:47 +02:00
Daniel Marjamäki
e987d2e05b
Memory leaks: more specific bailouts to reduce false negatives
2010-06-13 19:00:11 +02:00
Daniel Marjamäki
76221c0916
Fixed #1510 (false positive '(possible error) Memory leak' when 'a = b = new ...; delete a' (but not b))
2010-06-12 13:37:44 +02:00
Daniel Marjamäki
e140ff6e84
Memory leaks: skipping function call inside allocation
2010-06-06 11:22:59 +02:00
Daniel Marjamäki
a9196e8710
Memory leaks: Added allocation function 'g_strdup_printf'
2010-06-06 11:09:19 +02:00
Daniel Marjamäki
1de6e94947
Code coverage: Removed unused code
2010-06-05 11:25:47 +02:00
Leandro Lisboa Penz
4ac7da7d51
Fixed #73 (memory leaks not found when calling a function that returns allocated memory through a parameter)
2010-06-04 20:58:50 -03:00
Daniel Marjamäki
45821b3871
Fixed #1719 (False negative: memory leak (fgets in condition))
2010-05-31 18:20:34 +02:00
Daniel Marjamäki
9b1ed1112b
Memory leaks: Fixed bug in CheckMemoryLeak::functionReturnType
2010-05-30 20:30:08 +02:00
Daniel Marjamäki
0c6352a826
Memory leaks: small fixes. add checking of 'g_fopen'. don't let 'fclose' calls be interpreted as 'callfunc'
2010-05-29 21:56:18 +02:00
Daniel Marjamäki
495dfde32c
Fixed #1716 (Wrong reporting of leak with close() in a while loop condition)
2010-05-29 21:11:59 +02:00
Daniel Marjamäki
24703418bd
Fixed #1715 (switch with fallthrough and 'return' confuses cppcheck)
2010-05-29 20:55:09 +02:00
Daniel Marjamäki
b702b8542d
Memory leaks: enabled the leaks checking when members are not deallocated in the destructor. This checking was previously an --all check so there could be false positives.
2010-05-29 19:29:59 +02:00
Daniel Marjamäki
5692e7a6f6
Fixed #1707 (false positive: Memory leak)
2010-05-24 19:28:27 +02:00
Daniel Marjamäki
1792395654
astyle formatting
2010-05-18 20:08:27 +02:00
Zachary Blair
1539c0b3d2
Fixed #1649 (add a warning for potential memory leaks when using realloc)
2010-05-17 22:46:48 -07:00
Daniel Marjamäki
d0e122079f
Refactoring: Removed possibleError messages from CheckMemoryLeaks
2010-05-16 19:55:16 +02:00
Daniel Marjamki
d7b117402c
Code cleanup: Removed autodealloc handling
2010-05-16 07:15:31 +02:00
Daniel Marjamki
70d20ac544
Fixed #1681 (false negative: memory leak in operator =)
2010-05-15 19:40:32 +02:00
Daniel Marjamäki
5d01047ae4
Fixed #1665 ('If you see this, there is a bug': Token::Match('%var% ( %varid% [,)]', 0))
2010-05-10 18:11:02 +02:00
Daniel Marjamäki
d7118c4d36
Fixed #1648 (mismatch allocate and deallocate calls.)
2010-05-09 13:46:13 +02:00
Daniel Marjamäki
d3b5c30c6c
Fixed #1628 (false negative: memory leak when using redundant braces)
2010-04-27 20:43:31 +02:00
Daniel Marjamäki
eb82a89758
ExecutionPath: Better handling of if
2010-04-25 11:55:57 +02:00
Daniel Marjamäki
e068979d62
Fixed #1440 (false negative: memory leak (function parameters))
2010-04-24 22:24:03 +02:00
Daniel Marjamäki
5e5b8d3861
Fixed #1146 (improve check: memory leak not detected (allocation in subfunction))
2010-04-24 20:40:57 +02:00
Reijo Tomperi
35d2a27b9c
Update copyright year in all source files
2010-04-13 22:23:17 +03:00
Daniel Marjamäki
e9b4ea44a2
Refactoring: Disable inconclusive checks. They can still be activated for debugging/testing purposes
2010-04-10 14:05:33 +02:00
Reijo Tomperi
fcf532ccaf
Fix some -Wshadow compile warnings
2010-04-06 23:17:23 +03:00
Daniel Marjamäki
cd2f8f6838
Merge branch 'master' of git://github.com/czw/cppcheck
2010-04-06 22:12:11 +02:00
Reijo Tomperi
5aa88ee5a2
Fix vs warnings. Apply patch from kidkat.
2010-04-06 21:35:21 +03:00
Jens Bäckman
9ae714661b
Fix a rare crash with oddly formatted source files
2010-04-06 14:23:17 +02:00
Daniel Marjamäki
b62ac149b5
Cleanup: Removed unused code from CheckMemoryLeak
2010-04-05 18:37:46 +02:00
Daniel Marjamäki
abceff497b
Refactoring: some refactoring of ExecutionPath. The foundError was removed. No automatic bailout of all checks are made when errors are found.
2010-04-04 11:24:52 +02:00
Daniel Marjamäki
a8f566bfcd
Cleanup: Removed redundant simplification in checkmemoryleak.cpp
2010-04-03 20:47:38 +02:00
Daniel Marjamäki
0cad22314e
Reverted 'astyle fix'. Those changes are not in sync with my astyle configuration/setup.
2010-04-02 07:30:58 +02:00
Martin Ettl
193aa7d1d3
astyle fix
2010-04-02 02:21:53 +02:00
Daniel Marjamäki
3d90559035
Fixed #1386 and #1387 (False positives given by CheckMemoryLeakInFunction when temporary and member variable don't have the same allocation and deallocation)
2010-03-20 07:50:52 +01:00
Daniel Marjamäki
54c5d53eac
Fixed #1428 (False positive: (possible error) Memory leak when memory deleted in destructor)
2010-03-19 16:57:23 +01:00
Daniel Marjamäki
30d3418b11
doxygen: added more comments for CheckNullPointer and CheckUninitVar
2010-03-13 21:42:59 +01:00
Daniel Marjamäki
65ae37de2f
Fixed #1460 (false positive: memory leak when using throw no_memory)
2010-03-13 17:11:48 +01:00
Daniel Marjamäki
a6c9a6fc54
Fixed #1407 (false positive memory leak when returning pointer to the allocated memory)
2010-02-20 10:17:45 +01:00
Daniel Marjamäki
57f63f65c2
Borland C++: Fixed compiler errors (operands must be same type)
2010-02-20 08:53:33 +01:00
Daniel Marjamäki
9394816fcf
Refactoring: Use std::string instead of const char *
2010-02-14 19:58:17 +01:00
Daniel Marjamäki
e1b54df368
Fixed #1346 (False positive: Memory leak when allocated memory is stored elsewhere inside a condition)
2010-02-06 22:35:36 +01:00
Daniel Marjamäki
71117378ef
Fixed #1363 (false positive: memory leak)
2010-02-06 21:47:52 +01:00
Monika Lukow
25822dff24
Fixed #1249 (false positive '(error) Resource leak: f' for 'popen' / 'if(pclose(f) < 0)' sequence)
2010-01-31 11:44:30 +01:00
Reijo Tomperi
1d5ba4e320
Improved updateClassList(), but not yet took it into use.
...
findClassFunction is now non-static.
updateClassList usage is currently commented out as it doesn't handle class inside a function
2010-01-29 23:22:18 +02:00
Daniel Marjamäki
9d11492845
Fixed #1286 (Memory leak not detected)
2010-01-27 22:05:04 +01:00
Daniel Marjamäki
e49f7bfa0e
Fixed #1315 (mismatched allocation and deallocaton not detected)
2010-01-27 21:02:13 +01:00
Daniel Marjamäki
fa305d70bc
Fixed #1302 (False positive: Confusion between POSIX open() and class member)
2010-01-26 20:10:52 +01:00
Daniel Marjamäki
724c55b32a
Memory leaks: some refactorings and minor improvements
2010-01-24 21:48:39 +01:00
Daniel Marjamäki
a6e81c2ee7
Fixed #1293 (Things to add to call_func_white_list)
2010-01-20 22:03:06 +01:00
Daniel Marjamäki
85fcd4c9a9
Fixed #1282 (False positive for a memory leak in a simple loop)
2010-01-19 19:08:03 +01:00
Daniel Marjamäki
f49cc7f0ff
CheckMemoryLeak: Added 'scanf' and 'sscanf' to the whitelist
2010-01-18 21:58:27 +01:00
Daniel Marjamäki
32604dd55e
Fixed #1266 ('qsort' missing in call_func_white_list)
2010-01-18 21:34:11 +01:00
Daniel Marjamäki
ac077d3160
Fixed #1264 (False positive: Resource leak with if-else in while)
2010-01-14 21:41:50 +01:00
Daniel Marjamäki
0638bc2112
CheckMemoryLeaks: Added 'strlen' to white list
2010-01-12 22:10:59 +01:00
Daniel Marjamäki
fd5e3e63b8
Fixed #1258 ('fscanf' missing in call_func_white_list)
2010-01-12 21:56:22 +01:00
Daniel Marjamäki
814eb6caee
Fixed #1257 (potential leaks not reported becauseof 'continue' in loop)
2010-01-12 19:12:08 +01:00
Daniel Marjamäki
3fb420cbf0
fixed unlogged errors from the tokenizer and also some errors reported by valgrind
2010-01-10 20:03:46 +01:00
Daniel Marjamäki
a50ec2eded
memory leaks: better handling of loops and switch
2010-01-10 15:40:50 +01:00