mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
cleanup: replace membuffer by membufferpp in C-code
Thus, the membuffer data is automatically freed when going out of scope - one thing less to worry about. This fixes one use-after-free bug in uploadDiveLogsDE.cpp and one extremely questionable practice in divetooltipitem.cpp: The membuffer was a shared instance across all instances of the DiveToolTipItem. Remves unnecessary #include directives in files that didn't even use membuffer. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
parent
f142e9a9c6
commit
16b31985c3
9 changed files with 9 additions and 21 deletions
|
@ -65,7 +65,7 @@ void export_TeX(const char *filename, bool selected_only, bool plain, ExportCall
|
|||
int i;
|
||||
bool need_pagebreak = false;
|
||||
|
||||
struct membuffer buf = {};
|
||||
struct membufferpp buf;
|
||||
|
||||
if (plain) {
|
||||
ssrf = "";
|
||||
|
@ -253,7 +253,6 @@ void export_TeX(const char *filename, bool selected_only, bool plain, ExportCall
|
|||
flush_buffer(&buf, f); /*check for writing errors? */
|
||||
fclose(f);
|
||||
}
|
||||
free_buffer(&buf);
|
||||
cb.setProgress(1000);
|
||||
}
|
||||
|
||||
|
@ -265,7 +264,7 @@ void export_depths(const char *filename, bool selected_only)
|
|||
int i;
|
||||
const char *unit = NULL;
|
||||
|
||||
struct membuffer buf = {};
|
||||
struct membufferpp buf;
|
||||
|
||||
for_each_dive (i, dive) {
|
||||
if (selected_only && !dive->selected)
|
||||
|
@ -291,7 +290,6 @@ void export_depths(const char *filename, bool selected_only)
|
|||
flush_buffer(&buf, f); /*check for writing errors? */
|
||||
fclose(f);
|
||||
}
|
||||
free_buffer(&buf);
|
||||
}
|
||||
#endif /* ! SUBSURFACE_MOBILE */
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue