Commit Graph

154 Commits

Author SHA1 Message Date
Daniel Marjamäki 7e8b3c86f6 Memory leak: Better handling of 'if (0 != p)' 2008-11-17 17:02:06 +00:00
Reijo Tomperi aa579911ab Refactoring: Global variable tokenes is no more. 2008-11-16 15:58:52 +00:00
Reijo Tomperi 231e753289 Refactoring: static variable in CheckMemoryLeak is now a private member of the class. 2008-11-16 15:39:42 +00:00
Reijo Tomperi ce08224547 Few static variables are now private members. ShowAll etc. global variables are now members of Settings class and given as a
parameter to the classes that need them.
2008-11-16 15:18:50 +00:00
Daniel Marjamäki 2ecb805283 Memory leak: Mismatching allocation and deallocation in subfunction 2008-11-16 13:55:16 +00:00
Daniel Marjamäki 8dab130d3e Memory leak: Added a simple test case 2008-11-16 07:33:28 +00:00
Daniel Marjamäki d5d2f0671c Memory leak: reverted most of change 461. 2008-11-16 06:34:22 +00:00
Daniel Marjamäki d11e93f475 Memory leak: Added test case that failed. And fixed it. 2008-11-16 05:57:41 +00:00
Reijo Tomperi 08b25dc0d4 Refactoring: Global/Static variables, FunctionList, GlobalFunctions and UsedGlobalFunctions are now private members of Tokenizer class.
Class GlobalFunction is now private subclass of Tokenizer. 
Global functions CheckGlobalFunctionUsage, FillFunctionList and GetFunctionTokenByName are now member functions of Tokenizer.
2008-11-15 22:41:56 +00:00
Daniel Marjamäki 2cbfa6b60b Memory Leak: Handling Linux lists better => Detect more leaks 2008-11-15 18:24:40 +00:00
Reijo Tomperi 1efb4c95a6 Refactoring: Global variable Files is no more. Use tokenizer->getFiles() to get a pointer to it. 2008-11-13 22:39:47 +00:00
Reijo Tomperi 134985e410 Refactoring: Tokenizer object given as a parameter to most of the classes 2008-11-12 21:34:47 +00:00
Daniel Marjamäki f347efd802 Memory leak: Fixed one more unit test 2008-11-11 19:46:08 +00:00
Reijo Tomperi f242c4fddd Refactoring: Following new classes were created:
CheckBufferOverrunClass
CheckClass
CheckHeaders
CheckMemoryLeakClass
CheckOther
Preprocessor
2008-11-11 06:42:09 +00:00
Daniel Marjamäki 90635eced7 Memory leak: Handle "goto" a little differently 2008-11-10 20:18:03 +00:00
Daniel Marjamäki 0ea17838cf cleanup 2008-11-10 18:56:02 +00:00
Daniel Marjamäki f4712ef5bf Memory leaks: Added tests and handling for 'throw' and linux lists 2008-11-10 18:51:44 +00:00
Daniel Marjamäki b347ba5a7e Memory leak: Minor updates in the notvar function 2008-11-09 17:47:00 +00:00
Daniel Marjamäki fd7ce880aa Memory Leak: Improved checking of subfunctions. Simplify their code. 2008-11-09 17:36:53 +00:00
Daniel Marjamäki 2c74d1c0de Memory leak: Ensure that simple memory leak is detected 2008-11-09 17:27:23 +00:00
Daniel Marjamäki 8fce5d39e5 Memory leak: Began work for parsing into subfunctions. 2008-11-09 16:34:18 +00:00
Daniel Marjamäki 26bfab1c7e Memory leak: Removed false positives. 'use ; use ;' is not always the same as 'use ;' 2008-11-09 10:09:42 +00:00
Daniel Marjamäki c2ea705fd7 Memory Leak: Stronger checking. Ignore 'if use ;' and 'if dealloc;'. A leak could occur if it's not executed. 2008-11-09 08:40:57 +00:00
Reijo Tomperi ef9f472188 Refactoring: Tokenizer class added, functions still mostly static and
using globals
2008-11-09 07:19:53 +00:00
Daniel Marjamäki 224b241f9a Memory leak: remove the dealloc in "if dealloc ;" if it's not followed
by an "else". This makes the checking stronger.
2008-11-08 07:19:19 +00:00
Daniel Marjamäki 7569071846 Memory Leak: Added checking 2008-11-07 17:24:19 +00:00
Daniel Marjamäki 789aac2ef4 cleanup the files 2008-11-07 16:25:29 +00:00
Daniel Marjamäki 34f44e3c04 Memory Leaks: Convert "do-while" blocks to "while" blocks to make the handling for that the same. 2008-11-07 16:19:55 +00:00
Daniel Marjamäki cdf9ee4d8a Memory Leaks: Improved the checking of loops. 2008-11-07 07:46:28 +00:00
Daniel Marjamäki db6b4b3069 Memory Leak: Fixed bug with strdup in loop. Bug 2225370 2008-11-06 19:16:22 +00:00
Daniel Marjamäki c220b061dc Refactoring TOKEN: Changed from struct to class 2008-11-06 18:31:39 +00:00
Daniel Marjamäki 5b9aa96aba Licensing: Using the GPL 3 license 2008-10-26 07:55:15 +00:00
Daniel Marjamäki 2eb775e536 Reverted [352] it's not a good fix 2008-10-25 17:06:27 +00:00
Daniel Marjamäki de71095e82 CheckMemoryLeak: Fixed bug 2190219 - False positive, Mismatching allocation and deallocation 2008-10-25 16:47:51 +00:00
Daniel Marjamäki 65da6b3cd7 Memory Leak: Better checking of mismatching alloc and dealloc for gtk 2008-10-19 15:20:31 +00:00
Daniel Marjamäki f4319a865f Memory Leak: Fixed false positive 2008-10-19 07:23:06 +00:00
Daniel Marjamäki d839fcb5ba Memory Leak: Better checking of memory leaks in gtk applications 2008-10-18 17:43:07 +00:00
Daniel Marjamäki fb5707b73e MemoryLeak: Minor fix to reduce false positives 2008-10-16 16:26:29 +00:00
Daniel Marjamäki 7e18a2f689 MemoryLeak: minor updates 2008-10-15 07:04:32 +00:00
Daniel Marjamäki c9fc2594e8 CheckMemoryLeak: Removed false positives about not deleting class instances 2008-09-29 06:38:25 +00:00
Daniel Marjamäki 5e9f1010ff compilation: Various cross compilation fixes. The "--recursive" option doesn't work on VC now. 2008-09-11 17:03:58 +00:00
Daniel Marjamäki d942092ac0 memleak: better handling of switch blocks 2008-09-02 07:54:10 +00:00
Daniel Marjamäki aba1ef0d0e memleak: uncommented and fixed the handling of switch 2008-08-31 07:42:54 +00:00
Daniel Marjamäki b88fd769a7 memleak: commented out the switch handling temporarily. it causes
segmentation faults when checking the linux kernel.
2008-08-30 18:42:26 +00:00
Daniel Marjamäki 0f036f622b testmemleak: improved the checking of loops 2008-08-27 06:33:27 +00:00
Daniel Marjamäki d59dd1bf7c CheckMemoryLeak: Improved the reducing of "if.." 2008-08-25 18:01:11 +00:00
Daniel Marjamäki e2d1be9b0c testmemleak: replace switch blocks with if blocks 2008-08-24 08:01:58 +00:00
Daniel Marjamäki 7269dfa336 CheckMemoryLeak: Updated the handling of 'case' and 'default' a little 2008-08-23 13:16:25 +00:00
Daniel Marjamäki c618971609 testing: Moved tests from tests.cpp to testmemleak.cpp (forwhile, switch) 2008-08-22 06:30:06 +00:00
Daniel Marjamäki 794cdfd2ee testing: Added tests TestMemoryleak::ifelse 2008-08-21 18:55:04 +00:00
Daniel Marjamäki 1c5ed9b1c0 refactoring: made compilation work in codegear 2008-08-20 07:32:07 +00:00
Daniel Marjamäki e64eed909b CheckMemoryLeak: Fixed a bug: Don't erase "{ }", replace with ";" 2008-08-20 06:51:26 +00:00
Daniel Marjamäki 6bdb2ff0dc CheckMemoryLeak: Added testcase (false positive from linux kernel) 2008-08-19 17:16:55 +00:00
Daniel Marjamäki 0b8f646e0b CheckMemoryLeak: Small improvements 2008-08-19 04:53:41 +00:00
Daniel Marjamäki 9276783ab9 CheckMemoryLeak: By default skip class memory leaks because there may be various types of garbage collectors 2008-08-18 06:40:37 +00:00
Daniel Marjamäki 0679b89e84 CheckMemoryLeak: Minor updates 2008-08-17 18:01:37 +00:00
Daniel Marjamäki daf0563b07 CheckMemoryLeak: Made a test case work 2008-08-17 17:17:17 +00:00
Daniel Marjamäki 76fdae51d9 CheckMemoryLeak: Simplified and updated the code reducers 2008-08-16 19:19:56 +00:00
Daniel Marjamäki 68f409aca5 CheckMemoryLeak: Refactoring further 2008-08-16 17:49:40 +00:00
Daniel Marjamäki b29c916d9f CheckMemoryLeak: Added simple checking 2008-08-16 16:47:54 +00:00
Daniel Marjamäki 8260cf459a CheckMemoryLeak: Got rid of false positives 2008-08-16 13:13:36 +00:00
Daniel Marjamäki 0575781a67 CheckMemoryLeak: Refactoring the check 2008-08-16 12:44:46 +00:00
Daniel Marjamäki c833b51b25 CheckMemoryLeak: Made the checking a lot simpler when "--all" is not
given. This should give few false positives
2008-08-15 19:17:06 +00:00
Daniel Marjamäki 0ce33fe1da CheckMemoryLeak: Added testcase and made it work (assume that
foo.add(p) deallocates p. Todo to trace into foo.add)
2008-08-15 17:16:17 +00:00
Daniel Marjamäki 6b12d31f5f CheckMemoryLeak: better handling of switch blocks 2008-08-14 06:41:26 +00:00
Daniel Marjamäki 46be988e9a CheckMemoryLeak: Handle one more test case (return pointer) 2008-08-13 19:08:24 +00:00
Daniel Marjamäki 0394aedd52 CheckMemoryLeak: Calling unknown function => assume that it's deallocating variable 2008-08-13 16:41:27 +00:00
Daniel Marjamäki ff6adcbeff memory leak: improved the checking. subfunctions are parsed. redundant conditions are skipped 2008-08-12 18:24:42 +00:00
Daniel Marjamäki ff0f8a7434 CheckMemoryLeak: Improved the checking (handling loops) 2008-08-09 08:34:05 +00:00
Daniel Marjamäki 9607f3f4ce CheckMemoryLeak: updated the checking so that all execution paths are tried 2008-08-07 19:50:01 +00:00
Daniel Marjamäki 77c92a0fc8 Refactoring: Renamed class allocfunc to AllocFunc 2008-08-07 18:53:35 +00:00
Daniel Marjamäki 9ce09909e6 CheckMemoryLeak: Made the checking weaker to reduce false positives 2008-05-10 08:33:22 +00:00
Daniel Marjamäki 7ae162792e CheckMemoryLeak: Handling functions that allocate memory 2008-05-10 07:33:50 +00:00
Daniel Marjamäki 4094f6bc6e CheckMemoryLeak: Removed false positives 2008-05-04 10:15:39 +00:00
Daniel Marjamäki 15fe28272c CheckMemoryLeak.cpp: Minor improvements to avoid false positives 2008-05-03 07:16:22 +00:00
Daniel Marjamäki 70a9fa246c CheckMemoryLeak: A few tweaks to make it report less false positives against the linux kernel 2008-04-16 15:22:50 +00:00
Daniel Marjamäki 7708c2c1d1 CheckMemoryLeak: Small fixes and updates 2008-04-14 18:42:30 +00:00
Daniel Marjamäki a8ba28440c CheckMemoryLeak: Bug fix so that checking stops when the variable goes out of scope 2008-04-14 06:25:34 +00:00
Daniel Marjamäki 53f078fc1d Minor updates. Added todo. Refactoring 2008-04-12 12:07:35 +00:00
Daniel Marjamäki 4805f48a4f CheckMemoryLeak: Improved the checking
(tests.cpp:memleak_in_function:test16)
2008-04-12 11:44:32 +00:00
Daniel Marjamäki 90c2822031 CheckMemoryLeak: fixed bug that caused false positives 2008-04-12 11:33:48 +00:00
Daniel Marjamäki 59c1c16e03 Checking for memory leaks. Changed the handling of comments about
deleting
2008-04-12 06:33:45 +00:00
Daniel Marjamäki 1d258a55a4 Make it possible to disable memory leak checking for a variable. Usable to avoid false positives 2008-04-11 18:37:15 +00:00
Daniel Marjamäki bee1c1fb8d Refactoring CheckMemoryLeak to detect more leaks 2008-04-08 07:03:32 +00:00
Daniel Marjamäki 6490f79f78 CheckMemoryLeak: Added more allocation and deallocation functions 2008-04-06 10:36:41 +00:00
Daniel Marjamäki a938b4ed39 Fixing bug 1935006 - Compile problems on cygwin 2008-04-06 06:26:11 +00:00
Daniel Marjamäki fd9ca7c300 Re-adding CheckMemoryLeak functionality. More work is still needed. 2008-04-05 12:27:02 +00:00
Daniel Marjamäki 0bd9f3a8fa Further improvements of CheckMemoryLeak. Still not working as good as a few revisions ago. 2008-04-04 04:29:28 +00:00
Daniel Marjamäki f055ecf708 Refactoring CheckMemoryLeak 2008-04-03 06:15:26 +00:00
Daniel Marjamäki c56cfb5305 Match: Added matching for [] 2008-04-02 09:37:05 +00:00
Daniel Marjamäki b6868b7f1a Rewriting CheckMemoryLeak (Just Started) 2008-04-02 05:09:35 +00:00
Daniel Marjamäki 4691999ede Refactoring: Replaced deprecated "match" with the new "Match" 2008-03-28 07:18:03 +00:00
Daniel Marjamäki 0b5e6a55d4 Unit Testing: Checking for mismatching allocation / deallocation 2008-02-17 16:19:01 +00:00
Daniel Marjamäki 2dace08aae Unit Testing: Moved 'testmemcheck' 2008-02-16 18:24:13 +00:00
Daniel Marjamäki 8d116542ab Removing false positives 2007-08-31 04:23:09 +00:00
Daniel Marjamäki 2b3f362dfd Added 2 checks for memory leaks 2007-07-27 08:11:07 +00:00
Daniel Marjamäki eb0361d6b5 Command line options: Added "--all" and "--style", removed "-w" 2007-07-20 15:43:39 +00:00
Daniel Marjamäki 5b6ab28e0b For the highest accuracy, don't warn for all memory leaks unless the "-w" is given 2007-07-20 06:20:31 +00:00
Daniel Marjamäki 7ea6e10f1f Minor updates to make it easier to port to Linux 2007-07-17 06:39:34 +00:00
Daniel Marjamäki ba13ad5e3c Minor updates to make it portable to Linux. 2007-07-17 06:15:50 +00:00