Skip to content
Commits on Source (7)
Major changes in 0.4.1:
* Fix regression of extraction in symlinked locations (Ondrej Holy)
* Handle passphrase prompt cancellation to prevent showing error dialogs (Ondrej Holy)
* Downgrade meson dependency to 0.56.0 (Felipe Borges, Ondrej Holy)
Major changes in 0.4.0:
* Port to meson build system (Iñigo Martínez, Peter Keresztes Schmidt)
* Add support for creation of password-protected archives (Ondrej Holy)
......
......@@ -11,11 +11,11 @@ private_headers = [
gnome.gtkdoc(
gnome_autoar_name,
main_xml: f'@gnome_autoar_name@-docs.xml',
main_xml: '@0@-docs.xml'.format(gnome_autoar_name),
src_dir: src_inc,
dependencies: libgnome_autoar_dep,
scan_args: '--rebuild-types',
gobject_typesfile: f'@gnome_autoar_name@.types',
gobject_typesfile: '@0@.types'.format(gnome_autoar_name),
ignore_headers: private_headers,
fixxref_args: '--html-dir=' + (gnome_autoar_prefix / gnome.gtkdoc_html_dir(gnome_autoar_name)),
install: true,
......
......@@ -3,9 +3,9 @@
ent_conf = {
'PACKAGE': gnome_autoar_name,
'PACKAGE_BUGREPORT': f'https://gitlab.gnome.org/GNOME/@gnome_autoar_name@',
'PACKAGE_BUGREPORT': 'https://gitlab.gnome.org/GNOME/@0@'.format(gnome_autoar_name),
'PACKAGE_NAME': gnome_autoar_name,
'PACKAGE_STRING': f'@gnome_autoar_name@ @gnome_autoar_version@',
'PACKAGE_STRING': '@0@ @1@'.format(gnome_autoar_name, gnome_autoar_version),
'PACKAGE_TARNAME': gnome_autoar_name,
'PACKAGE_URL': '',
'PACKAGE_VERSION': gnome_autoar_version,
......
......@@ -907,7 +907,8 @@ autoar_extractor_do_sanitize_pathname (AutoarExtractor *self,
extracted_filename = g_file_get_child (destination, basename);
}
if (self->prefix != NULL && self->new_prefix != NULL) {
if (self->prefix != NULL && self->new_prefix != NULL &&
!g_file_equal (self->prefix, self->new_prefix)) {
g_autofree char *relative_path;
/* Replace the old prefix with the new one */
relative_path = g_file_get_relative_path (self->prefix,
......@@ -1676,6 +1677,10 @@ autoar_extractor_step_scan_toplevel (AutoarExtractor *self)
if (archive_entry_is_encrypted (entry)) {
autoar_extractor_request_passphrase (self);
if (g_cancellable_is_cancelled (self->cancellable)) {
archive_read_free (a);
return;
}
}
if (self->use_raw_format) {
......@@ -1825,11 +1830,6 @@ autoar_extractor_step_decide_destination (AutoarExtractor *self)
self->prefix,
files,
&self->new_prefix);
if (self->new_prefix && g_file_equal (self->prefix, self->new_prefix)) {
/* This prevents redundant path name handling later. */
g_clear_object (&self->new_prefix);
}
} else {
autoar_extractor_signal_decide_destination (self,
self->destination_dir,
......
......@@ -3,7 +3,7 @@
src_inc = include_directories('.')
libname = f'@gnome_autoar_name@-@gnome_autoar_api_version@'
libname= '@0@-@1@'.format(gnome_autoar_name, gnome_autoar_api_version)
headers = files(
'autoar-compressor.h',
......@@ -31,8 +31,8 @@ enum_types = 'autoar-enum-types'
enum_sources = gnome.mkenums(
enum_types,
sources: headers,
h_template: f'@enum_types@.h.template',
c_template: f'@enum_types@.c.template',
h_template: '@0@.h.template'.format(enum_types),
c_template: '@0@.c.template'.format(enum_types),
install_header: true,
install_dir: gnome_autoar_includedir / libname / gnome_autoar_name,
)
......@@ -86,7 +86,7 @@ if enable_introspection
namespace: api_ns,
nsversion: gnome_autoar_api_ns_version,
identifier_prefix: gnome_autoar_api_prefix,
export_packages: f'@api_ns@-@gnome_autoar_api_ns_version@',
export_packages: '@0@-@1@'.format(api_ns, gnome_autoar_api_ns_version),
install: true,
)
......@@ -104,7 +104,7 @@ if not enable_gtk
subdir_done()
endif
libname_gtk = f'@gnome_autoar_name@-gtk-@gnome_autoar_api_version@'
libname_gtk = '@0@-gtk-@1@'.format(gnome_autoar_name, gnome_autoar_api_version)
headers = files(
'autoar-gtk-chooser.h',
......@@ -161,7 +161,7 @@ if enable_introspection
namespace: api_ns,
nsversion: gnome_autoar_api_ns_version,
identifier_prefix: 'AutoarGtk',
export_packages: f'@api_ns@-@gnome_autoar_api_ns_version@',
export_packages: '@0@-@1@'.format(api_ns, gnome_autoar_api_ns_version),
install: true,
)
......
......@@ -3,10 +3,10 @@
project(
'gnome-autoar', 'c',
version: '0.4.0',
version: '0.4.1',
license: 'LGPL2.1+',
default_options: 'buildtype=debugoptimized',
meson_version: '>= 0.58.0',
meson_version: '>= 0.56.0',
)
gnome_autoar_name = meson.project_name()
......@@ -25,7 +25,7 @@ gnome_autoar_micro_version = version_array[2].to_int()
#
# When bumping the first component version, set the second and third components
# to 0. When bumping the second version, set the third one to zero.
gnome_autoar_libversion = '0.1.0'
gnome_autoar_libversion = '0.1.1'
gnome_autoar_api_version = 0
......@@ -96,7 +96,7 @@ gtk_dep = dependency(
'gtk+-3.0',
version: gtk_req_version,
required: get_option('gtk'),
not_found_message: f'GTK+ support requested but gtk+-3.0 @gtk_req_version@ could not be found',
not_found_message: 'GTK+ support requested but gtk+-3.0 @0@ could not be found'.format(gtk_req_version),
)
enable_gtk = gtk_dep.found()
......@@ -105,12 +105,6 @@ enable_introspection = dependency('gobject-introspection-1.0', version: '>= 1.30
enable_vapi = get_option('vapi')
assert(not enable_vapi or enable_introspection, 'GObject introspection support must be enabled to build VALA bindings')
gio_schemasdir = gio_dep.get_variable(
'schemasdir',
pkgconfig_define: ['datadir', gnome_autoar_datadir],
default_value: gnome_autoar_datadir / 'glib-2.0/schemas',
)
subdir('gnome-autoar')
enable_tests = get_option('tests')
......
......@@ -23,7 +23,7 @@ foreach test_unit: test_units
test(
test_unit[0],
exe,
env : [f'G_TEST_SRCDIR=@source_root@']
env : ['G_TEST_SRCDIR=@0@'.format(source_root)]
)
endif
endforeach