Fix tiny leak in pleasecite.cpp
authorKevin Boyd <kevin.boyd@uconn.edu>
Sun, 13 Jan 2019 16:04:55 +0000 (11:04 -0500)
committerPaul Bauer <paul.bauer.q@gmail.com>
Tue, 15 Jan 2019 05:20:15 +0000 (06:20 +0100)
Change-Id: Iee2846d42a8b843c2e70de2b7f4e33e889fad90a

src/gromacs/utility/pleasecite.cpp

index d2f11a6b9d7bb7891e5bfa7723c7bf633b07b8da..783055c48a49fbf2a8c5ad208f9eb0af097f69af 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Copyright (c) 1991-2000, University of Groningen, The Netherlands.
  * Copyright (c) 2001-2004, The GROMACS development team.
- * Copyright (c) 2013,2014,2015,2016,2017,2018, by the GROMACS development team, led by
+ * Copyright (c) 2013,2014,2015,2016,2017,2018,2019, by the GROMACS development team, led by
  * Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
  * and including many others, as listed in the AUTHORS file in the
  * top-level source directory and at http://www.gromacs.org.
@@ -44,6 +44,7 @@
 #include "gromacs/utility/baseversion.h"
 #include "gromacs/utility/cstringutil.h"
 #include "gromacs/utility/smalloc.h"
+#include "gromacs/utility/stringutil.h"
 
 typedef struct {
     const char *key;
@@ -433,15 +434,17 @@ writeSourceDoi(FILE *fp)
         /* Not a release build, return without printing anything */
         return;
     }
-
-    const char *doiString = wrap_lines(gmxDOI(), LINE_WIDTH, 0, FALSE);
+    gmx::TextLineWrapper wrapper;
+    wrapper.settings().setLineLength(LINE_WIDTH);
+    wrapper.settings().setFirstLineIndent(0);
+    const std::string doiString = wrapper.wrapToString(gmxDOI());
 
     if (fp == nullptr)
     {
         return;
     }
     fprintf(fp, "\n++++ PLEASE CITE THE DOI FOR THIS VERSION OF GROMACS ++++\n");
-    fprintf(fp, "%s%s\n", "https://doi.org/", doiString);
+    fprintf(fp, "%s%s\n", "https://doi.org/", doiString.c_str());
     fprintf(fp, "-------- -------- --- Thank You --- -------- --------\n\n");
     fflush(fp);
 }