diff options
author | Richard Hughes <richard@hughsie.com> | 2015-02-02 10:12:36 +0000 |
---|---|---|
committer | Richard Hughes <richard@hughsie.com> | 2015-02-02 10:12:40 +0000 |
commit | f3ac072bad60ffb43bef2c0d353255ff1c184fba (patch) | |
tree | b9ec66b57a1710c98b1c3d15d44693896f199cec /libappstream-builder/asb-package.h | |
parent | eda6e7c1865501f60e6dc0ced84964f0e1fb9b41 (diff) | |
download | appstream-glib-f3ac072bad60ffb43bef2c0d353255ff1c184fba.tar.gz |
Close the packages after they have been processed
This means we have to re-open the files for the few packages used as
extra-packages to other packages, but means we keep the RSS value to a sane
value for a large number of packages. We can't go above 4GB RSS for Fedora...
This also means we spend less time 'shutting down' as the packages have
typically been released as part of the task, rather when the context exits.
Diffstat (limited to 'libappstream-builder/asb-package.h')
-rw-r--r-- | libappstream-builder/asb-package.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libappstream-builder/asb-package.h b/libappstream-builder/asb-package.h index 53fadf9..6c8b4a5 100644 --- a/libappstream-builder/asb-package.h +++ b/libappstream-builder/asb-package.h @@ -72,6 +72,8 @@ struct _AsbPackageClass GError **error); gint (*compare) (AsbPackage *pkg1, AsbPackage *pkg2); + gboolean (*close) (AsbPackage *pkg, + GError **error); /*< private >*/ void (*_asb_reserved1) (void); void (*_asb_reserved2) (void); @@ -80,7 +82,6 @@ struct _AsbPackageClass void (*_asb_reserved5) (void); void (*_asb_reserved6) (void); void (*_asb_reserved7) (void); - void (*_asb_reserved8) (void); }; typedef enum { @@ -110,6 +111,8 @@ gboolean asb_package_log_flush (AsbPackage *pkg, gboolean asb_package_open (AsbPackage *pkg, const gchar *filename, GError **error); +gboolean asb_package_close (AsbPackage *pkg, + GError **error); gboolean asb_package_ensure (AsbPackage *pkg, AsbPackageEnsureFlags flags, GError **error); |