On 5 April 2014 11:45, Venkatesh Shukla <[email protected]> wrote: > Arguments 2 and 3 in fread() seemed to be exchanged because of which > only one character was read into the temp xml file. > Fixed it by exchange and replacing 1 by sizeof(char) to be sure. > > Signed-off-by: Venkatesh Shukla <[email protected]> > --- > qt-ui/subsurfacewebservices.cpp | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/qt-ui/subsurfacewebservices.cpp > b/qt-ui/subsurfacewebservices.cpp > index b231173..e49cec9 100644 > --- a/qt-ui/subsurfacewebservices.cpp > +++ b/qt-ui/subsurfacewebservices.cpp > @@ -159,7 +159,7 @@ bool > DivelogsDeWebServices::prepare_dives_for_divelogs(const QString &tempfile, > rewind(f); > > membuf = (char *)malloc(streamsize + 1); > - if (!membuf || (streamsize = fread(membuf, streamsize, 1, f)) == 0) { > + if (!membuf || (streamsize = fread(membuf, sizeof(char), streamsize, f)) > == 0) { > report_error(tr("internal error: %s").toUtf8(), > qt_error_string().toUtf8().data()); > fclose(f); > free((void *)membuf);
the argument swap is my fault which originates back to the GTK version. was not caught because we didn't use streamsize and only checked if fread() succeeds. ACK lubomir -- _______________________________________________ subsurface mailing list [email protected] http://lists.hohndel.org/cgi-bin/mailman/listinfo/subsurface
