{"thread":{"id":"20073","subject":"found another resource leak in file xdiff-interface.c","startedAt":"2009-07-10T07:47:57Z","lastAt":"2009-07-10T07:47:57Z","messageCount":1,"participants":["Martin Ettl"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"117757","messageId":"20090710074757.322180@gmx.net","threadId":"20073","inReplyTo":null,"subject":"found another resource leak in file xdiff-interface.c","fromName":"Martin Ettl","fromEmail":"ettl.martin@gmx.de","sentAt":"2009-07-10T07:47:57Z","receivedAt":"2009-07-10T07:47:57Z","isPatch":false,"sender":{"key":"ettl.martin@gmx.de","avatar":null},"body":"Hi friends,\n\ni have detected another resource leak (using the static code analysis tool cppcheck) in file xdiff-interface.c.\n\nThe tool prints the following warning:\n\n[git.1.6.3.3/xdiff-interface.c:215](error) resource leak f\n\n\nint read_mmfile(mmfile_t *ptr, const char *filename)\n{\n//...\n\tif (sz && fread(ptr->ptr, sz, 1, f) != 1)\n\t\treturn error(\"Could not read %s\", filename);\n\tfclose(f);\n// ....\n\tptr->size = sz;\n\treturn 0;\n}\n\nA possible solution might be:\n\nint read_mmfile(mmfile_t *ptr, const char *filename)\n{\n//...\n\tif (sz && fread(ptr->ptr, sz, 1, f) != 1)\n        {\n\t        fclose(f);\n\t\treturn error(\"Could not read %s\", filename);\n        }\n\tfclose(f);\n// ....\n\tptr->size = sz;\n\treturn 0;\n}\n\nBest regards\n\nEttl Martin\n\n-- \nGRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!\nJetzt freischalten unter http://portal.gmx.net/de/go/maxdome01\n"}]}