• Ell's avatar
    app: explicitly close output stream when saving internal data · a72f7f1a
    Ell authored
    According to some bug reports, it seems that under some (unknown)
    conditions we might save an empty custom gradient file on exit (for
    equally unknown reasons).  The only difference in the way we save
    internal data files, such as the custom gradient, compared to
    gimp_data_save(), is the fact that we currently don't explicitly
    close the output stream, but rather only unref it.
    
    The output stream should be implicitly closed (and hence flushed)
    upon destruction, but maybe the unreffing is not enough to
    guarantee that it's actually destroyed (maybe it spawns an extra
    reference for some reason, who knows.)  Anyway, let's just
    explicitly close it, which also gives us a chance to catch and
    report any errors occursing during flushing/closing (which,
    altenatively, might be the culprit).
    
    Additionally, a few more error-reporting improvements, to match
    gimp_data_save().
    a72f7f1a
gimp-internal-data.c 8.97 KB