Hello community, here is the log from the commit of package snapper for openSUSE:Factory checked in at 2018-12-10 12:27:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/snapper (Old) and /work/SRC/openSUSE:Factory/.snapper.new.19453 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "snapper" Mon Dec 10 12:27:55 2018 rev:105 rq:655571 version:0.8.1 Changes: -------- --- /work/SRC/openSUSE:Factory/snapper/snapper.changes 2018-11-01 19:08:54.630031154 +0100 +++ /work/SRC/openSUSE:Factory/.snapper.new.19453/snapper.changes 2018-12-10 12:27:58.202549056 +0100 @@ -1,0 +2,7 @@ +Wed Nov 21 18:59:09 CET 2018 - [email protected] + +- validate snapshot id corresponding to the default subvolume + before using it for the current config (gh#openSUSE/snapper#449) +- version 0.8.1 + +------------------------------------------------------------------- Old: ---- snapper-0.8.0.tar.bz2 New: ---- snapper-0.8.1.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ snapper.spec ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:58.742548517 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:58.746548513 +0100 @@ -22,7 +22,7 @@ %endif Name: snapper -Version: 0.8.0 +Version: 0.8.1 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build Source: snapper-%{version}.tar.bz2 ++++++ debian.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/changelog new/debian/changelog --- old/debian/changelog 2018-10-30 01:00:00.000000000 +0100 +++ new/debian/changelog 2018-12-06 01:00:00.000000000 +0100 @@ -1,3 +1,9 @@ +snapper (0.8.1) stable; urgency=low + + * Updated to version 0.8.1 + + -- Arvin Schnell <[email protected]> Thu, 22 Nov 2018 09:33:14 +0100 + snapper (0.8.0) stable; urgency=low * Updated to version 0.8.0 ++++++ snapper-0.8.0.tar.bz2 -> snapper-0.8.1.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/LIBVERSION new/snapper-0.8.1/LIBVERSION --- old/snapper-0.8.0/LIBVERSION 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/LIBVERSION 2018-12-06 01:00:00.000000000 +0100 @@ -1 +1 @@ -4.4.0 +4.5.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/VERSION new/snapper-0.8.1/VERSION --- old/snapper-0.8.0/VERSION 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/VERSION 2018-12-06 01:00:00.000000000 +0100 @@ -1 +1 @@ -0.8.0 +0.8.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/client/snapper.cc new/snapper-0.8.1/client/snapper.cc --- old/snapper-0.8.0/client/snapper.cc 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/client/snapper.cc 2018-12-06 01:00:00.000000000 +0100 @@ -807,7 +807,7 @@ void filter_undeletables(ProxySnapshots& snapshots, vector<ProxySnapshots::iterator>& nums) { - auto filter = [&snapshots, &nums](ProxySnapshots::const_iterator undeletable, const string& message) + auto filter = [&snapshots, &nums](ProxySnapshots::const_iterator undeletable, const char* message) { if (undeletable == snapshots.end()) return; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/client/utils/text.cc new/snapper-0.8.1/client/utils/text.cc --- old/snapper-0.8.0/client/utils/text.cc 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/client/utils/text.cc 2018-12-06 01:00:00.000000000 +0100 @@ -14,12 +14,16 @@ using namespace std; -string _(const char* msgid) + +const char* +_(const char* msgid) { return dgettext("snapper", msgid); } -string _(const char* msgid, const char* msgid_plural, unsigned long int n) + +const char* +_(const char* msgid, const char* msgid_plural, unsigned long int n) { return dngettext("snapper", msgid, msgid_plural, n); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/client/utils/text.h new/snapper-0.8.1/client/utils/text.h --- old/snapper-0.8.0/client/utils/text.h 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/client/utils/text.h 2018-12-06 01:00:00.000000000 +0100 @@ -11,8 +11,10 @@ #include <string> #include <iosfwd> -std::string _(const char* msgid); -std::string _(const char* msgid, const char* msgid_plural, unsigned long int n); +const char* _(const char* msgid) __attribute__ ((format_arg(1))); + +const char* _(const char* msgid, const char* msgid_plural, unsigned long int n) + __attribute__ ((format_arg(1))) __attribute__ ((format_arg(2))); /** Returns the column width of a multi-byte character string \a str */ unsigned mbs_width (const std::string & str); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/configure new/snapper-0.8.1/configure --- old/snapper-0.8.0/configure 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/configure 2018-12-06 01:00:00.000000000 +0100 @@ -16481,8 +16481,8 @@ AM_BACKSLASH='\' -CFLAGS="${CFLAGS} -std=c99 -Wall -Wextra -Wformat=2 -Wmissing-prototypes -Wno-unused-parameter" -CXXFLAGS="${CXXFLAGS} -std=c++11 -Wall -Wextra -Wformat=2 -Wnon-virtual-dtor -Wno-unused-parameter" +CFLAGS="${CFLAGS} -std=c99 -Wall -Wextra -Wformat -Wmissing-prototypes -Wno-unused-parameter" +CXXFLAGS="${CXXFLAGS} -std=c++11 -Wall -Wextra -Wformat -Wnon-virtual-dtor -Wno-unused-parameter" SYSCONFIG=/etc/sysconfig diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/configure.ac new/snapper-0.8.1/configure.ac --- old/snapper-0.8.0/configure.ac 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/configure.ac 2018-12-06 01:00:00.000000000 +0100 @@ -55,8 +55,8 @@ dnl Disable it by "configure --disable-silent-rules" or "make V=1" m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) -CFLAGS="${CFLAGS} -std=c99 -Wall -Wextra -Wformat=2 -Wmissing-prototypes -Wno-unused-parameter" -CXXFLAGS="${CXXFLAGS} -std=c++11 -Wall -Wextra -Wformat=2 -Wnon-virtual-dtor -Wno-unused-parameter" +CFLAGS="${CFLAGS} -std=c99 -Wall -Wextra -Wformat -Wmissing-prototypes -Wno-unused-parameter" +CXXFLAGS="${CXXFLAGS} -std=c++11 -Wall -Wextra -Wformat -Wnon-virtual-dtor -Wno-unused-parameter" SYSCONFIG=/etc/sysconfig diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/po/es.po new/snapper-0.8.1/po/es.po --- old/snapper-0.8.0/po/es.po 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/po/es.po 2018-12-06 01:00:00.000000000 +0100 @@ -4,9 +4,10 @@ "Project-Id-Version: snapper\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-10-29 14:27+0100\n" -"PO-Revision-Date: 2018-04-25 21:20+0000\n" +"PO-Revision-Date: 2018-11-30 23:06+0000\n" "Last-Translator: jc sl <[email protected]>\n" -"Language-Team: Spanish <https://l10n.opensuse.org/projects/snapper/master/es/>\n" +"Language-Team: Spanish " +"<https://l10n.opensuse.org/projects/snapper/master/es/>\n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -146,7 +147,7 @@ msgstr "\tsnapper modify <número>" msgid "\tsnapper mount <number>" -msgstr "\tsnapper modify <number>" +msgstr "\tsnapper mount <number>" # SLE12 msgid "\tsnapper rollback [number]" @@ -162,7 +163,7 @@ msgstr "\tsnapper status <número1>..<número2>" msgid "\tsnapper umount <number>" -msgstr "\tsnapper modify <number>" +msgstr "\tsnapper umount <number>" msgid "\tsnapper undochange <number1>..<number2> [files]" msgstr "\tsnapper undochange <número1>..<número2> [archivos]" @@ -268,17 +269,21 @@ msgid "B" msgstr "" -#, fuzzy, c-format +#, c-format msgid "Cannot delete snapshot %d since it is the current system." -msgstr " Borrar imagen:" +msgstr "No se puede borrar la imagen %d porque es el sistema actual." #, c-format msgid "Cannot delete snapshot %d since it is the currently mounted snapshot." msgstr "" +"No se puede borrar la imagen %d porque es la imagen montada en estos " +"momentos." #, c-format msgid "Cannot delete snapshot %d since it is the next to be mounted snapshot." msgstr "" +"No se puede borrar la imagen %d porque es la siguiente imagen que se va a " +"montar." msgid "Cleanup" msgstr "Limpieza" @@ -460,9 +465,9 @@ msgid "File '%s' not found." msgstr "No se ha encontrado el archivo '%s'." -#, fuzzy, c-format +#, c-format msgid "Free space error (%s)." -msgstr "Error de E/S (%s)." +msgstr "Error de espacio libre (%s)." #. TRANSLATORS: symbol for "gibi bytes" (best keep untranslated) msgid "GiB" @@ -638,7 +643,7 @@ msgstr "Use un número entero entre %d y %d." msgid "Used Space" -msgstr "" +msgstr "Espacio usado" msgid "User" msgstr "Usuario" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/po/fr.po new/snapper-0.8.1/po/fr.po --- old/snapper-0.8.0/po/fr.po 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/po/fr.po 2018-12-06 01:00:00.000000000 +0100 @@ -4,9 +4,10 @@ "Project-Id-Version: @PACKAGE@\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-10-29 14:27+0100\n" -"PO-Revision-Date: 2018-10-23 20:02+0000\n" +"PO-Revision-Date: 2018-11-02 09:49+0000\n" "Last-Translator: Antoine Belvire <[email protected]>\n" -"Language-Team: French <https://l10n.opensuse.org/projects/snapper/master/fr/>\n" +"Language-Team: French <https://l10n.opensuse.org/projects/snapper/master/fr/>" +"\n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -462,9 +463,9 @@ msgid "File '%s' not found." msgstr "Fichier '%s' introuvable." -#, fuzzy, c-format +#, c-format msgid "Free space error (%s)." -msgstr "Erreur E/S (%s)." +msgstr "Erreur d'espace libre (%s)." #. TRANSLATORS: symbol for "gibi bytes" (best keep untranslated) msgid "GiB" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/po/id.po new/snapper-0.8.1/po/id.po --- old/snapper-0.8.0/po/id.po 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/po/id.po 2018-12-06 01:00:00.000000000 +0100 @@ -3,9 +3,10 @@ "Project-Id-Version: @PACKAGE@\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-10-29 14:27+0100\n" -"PO-Revision-Date: 2018-10-05 12:44+0000\n" +"PO-Revision-Date: 2018-11-02 14:47+0000\n" "Last-Translator: Kukuh Syafaat <[email protected]>\n" -"Language-Team: Indonesian <https://l10n.opensuse.org/projects/snapper/master/id/>\n" +"Language-Team: Indonesian " +"<https://l10n.opensuse.org/projects/snapper/master/id/>\n" "Language: id\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -255,17 +256,21 @@ msgid "B" msgstr "B" -#, fuzzy, c-format +#, c-format msgid "Cannot delete snapshot %d since it is the current system." -msgstr " Menghapus snapshot:" +msgstr "Tidak dapat menghapus snapshot %d karena ini adalah sistem saat ini." #, c-format msgid "Cannot delete snapshot %d since it is the currently mounted snapshot." msgstr "" +"Tidak dapat menghapus snapshot %d karena ini adalah snapshot yang saat ini " +"terpasang." #, c-format msgid "Cannot delete snapshot %d since it is the next to be mounted snapshot." msgstr "" +"Tidak dapat menghapus snapshot %d karena ini adalah snapshot yang dipasang " +"selanjutnya." msgid "Cleanup" msgstr "Pembersihan" @@ -434,9 +439,9 @@ msgid "File '%s' not found." msgstr "Berkas '%s' tidak ditemukan." -#, fuzzy, c-format +#, c-format msgid "Free space error (%s)." -msgstr "Galat I/O (%s)." +msgstr "Galat ruang bebas (%s)." #. TRANSLATORS: symbol for "gibi bytes" (best keep untranslated) msgid "GiB" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/po/it.po new/snapper-0.8.1/po/it.po --- old/snapper-0.8.0/po/it.po 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/po/it.po 2018-12-06 01:00:00.000000000 +0100 @@ -4,9 +4,10 @@ "Project-Id-Version: @PACKAGE@\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-10-29 14:27+0100\n" -"PO-Revision-Date: 2018-10-23 14:41+0000\n" +"PO-Revision-Date: 2018-11-11 14:48+0000\n" "Last-Translator: Alessio Adamo <[email protected]>\n" -"Language-Team: Italian <https://l10n.opensuse.org/projects/snapper/master/it/>\n" +"Language-Team: Italian " +"<https://l10n.opensuse.org/projects/snapper/master/it/>\n" "Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -437,9 +438,9 @@ msgid "File '%s' not found." msgstr "File '%s' non trovato." -#, fuzzy, c-format +#, c-format msgid "Free space error (%s)." -msgstr "Errore di IO (%s)." +msgstr "Errore di spazio libero (%s)." #. TRANSLATORS: symbol for "gibi bytes" (best keep untranslated) msgid "GiB" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/po/pt_BR.po new/snapper-0.8.1/po/pt_BR.po --- old/snapper-0.8.0/po/pt_BR.po 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/po/pt_BR.po 2018-12-06 01:00:00.000000000 +0100 @@ -9,9 +9,10 @@ "Project-Id-Version: @PACKAGE@\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-10-29 14:27+0100\n" -"PO-Revision-Date: 2018-10-24 15:01+0000\n" +"PO-Revision-Date: 2018-10-31 12:21+0000\n" "Last-Translator: Rodrigo Macedo <[email protected]>\n" -"Language-Team: Portuguese (Brazil) <https://l10n.opensuse.org/projects/snapper/master/pt_BR/>\n" +"Language-Team: Portuguese (Brazil) " +"<https://l10n.opensuse.org/projects/snapper/master/pt_BR/>\n" "Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -441,9 +442,9 @@ msgid "File '%s' not found." msgstr "Arquivo '%s' não encontrado." -#, fuzzy, c-format +#, c-format msgid "Free space error (%s)." -msgstr "Erro de E/S (%s)." +msgstr "Erro de espaço livre (%s)." #. TRANSLATORS: symbol for "gibi bytes" (best keep untranslated) msgid "GiB" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/po/sk.po new/snapper-0.8.1/po/sk.po --- old/snapper-0.8.0/po/sk.po 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/po/sk.po 2018-12-06 01:00:00.000000000 +0100 @@ -7,9 +7,10 @@ "Project-Id-Version: @PACKAGE@\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-10-29 14:27+0100\n" -"PO-Revision-Date: 2018-10-27 11:32+0000\n" +"PO-Revision-Date: 2018-11-05 12:25+0000\n" "Last-Translator: Ferdinand Galko <[email protected]>\n" -"Language-Team: Slovak <https://l10n.opensuse.org/projects/snapper/master/sk/>\n" +"Language-Team: Slovak <https://l10n.opensuse.org/projects/snapper/master/sk/>" +"\n" "Language: sk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -442,9 +443,9 @@ msgstr "Súbor '%s' nebol nájdený." # error box title -#, fuzzy, c-format +#, c-format msgid "Free space error (%s)." -msgstr "V/V chyba (%s)." +msgstr "Chyba voľného miesta (%s)." #. TRANSLATORS: symbol for "gibi bytes" (best keep untranslated) msgid "GiB" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/po/zh_CN.po new/snapper-0.8.1/po/zh_CN.po --- old/snapper-0.8.0/po/zh_CN.po 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/po/zh_CN.po 2018-12-06 01:00:00.000000000 +0100 @@ -10,9 +10,10 @@ "Project-Id-Version: @PACKAGE@\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-10-29 14:27+0100\n" -"PO-Revision-Date: 2018-10-23 13:00+0000\n" +"PO-Revision-Date: 2018-11-03 02:15+0000\n" "Last-Translator: Marguerite Su <[email protected]>\n" -"Language-Team: Chinese (China) <https://l10n.opensuse.org/projects/snapper/master/zh_CN/>\n" +"Language-Team: Chinese (China) " +"<https://l10n.opensuse.org/projects/snapper/master/zh_CN/>\n" "Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -442,9 +443,9 @@ msgid "File '%s' not found." msgstr "未找到文件 '%s'。" -#, fuzzy, c-format +#, c-format msgid "Free space error (%s)." -msgstr "IO 错误 (%s)。" +msgstr "空余空间错误 (%s)。" #. TRANSLATORS: symbol for "gibi bytes" (best keep untranslated) msgid "GiB" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/snapper/AppUtil.cc new/snapper-0.8.1/snapper/AppUtil.cc --- old/snapper-0.8.0/snapper/AppUtil.cc 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/snapper/AppUtil.cc 2018-12-06 01:00:00.000000000 +0100 @@ -223,28 +223,28 @@ string stringerror(int errnum) { -#if (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && ! _GNU_SOURCE +#if (_POSIX_C_SOURCE >= 200112L) && ! _GNU_SOURCE char buf1[100]; - if (strerror_r(errno, buf1, sizeof(buf1)-1) == 0) + if (strerror_r(errnum, buf1, sizeof(buf1) - 1) == 0) return string(buf1); return string("strerror failed"); #else char buf1[100]; - const char* buf2 = strerror_r(errno, buf1, sizeof(buf1)-1); + const char* buf2 = strerror_r(errnum, buf1, sizeof(buf1) - 1); return string(buf2); #endif } string - sformat(const string& format, ...) + sformat(const char* format, ...) { char* result; string str; va_list ap; va_start(ap, format); - if (vasprintf(&result, format.c_str(), ap) != -1) + if (vasprintf(&result, format, ap) != -1) { str = result; free(result); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/snapper/AppUtil.h new/snapper-0.8.1/snapper/AppUtil.h --- old/snapper-0.8.0/snapper/AppUtil.h 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/snapper/AppUtil.h 2018-12-06 01:00:00.000000000 +0100 @@ -111,7 +111,7 @@ }; - string sformat(const string& format, ...); + string sformat(const char* format, ...) __attribute__ ((format(printf, 1, 2))); struct runtime_error_with_errno : public std::runtime_error diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/snapper/Btrfs.cc new/snapper-0.8.1/snapper/Btrfs.cc --- old/snapper-0.8.0/snapper/Btrfs.cc 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/snapper/Btrfs.cc 2018-12-06 01:00:00.000000000 +0100 @@ -41,6 +41,12 @@ #include <btrfs/send.h> #include <btrfs/send-stream.h> #include <btrfs/send-utils.h> +#ifdef swap +// temporary workaround, see +// https://github.com/openSUSE/snapper/issues/459, fixed properly in +// btrfs-progs 4.19.1 +#undef swap +#endif #include <boost/version.hpp> #include <boost/thread.hpp> #endif @@ -1463,6 +1469,9 @@ unsigned int num = stoi(rx.cap(1)); + if (!checkSnapshot(num)) + return make_pair(false, 0); + if (get_id(openSnapshotDir(num).fd()) != id) return make_pair(false, 0); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/snapper/BtrfsUtils.cc new/snapper-0.8.1/snapper/BtrfsUtils.cc --- old/snapper-0.8.0/snapper/BtrfsUtils.cc 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/snapper/BtrfsUtils.cc 2018-12-06 01:00:00.000000000 +0100 @@ -34,6 +34,12 @@ #ifdef HAVE_LIBBTRFS #include <btrfs/ioctl.h> #include <btrfs/send-utils.h> +#ifdef swap +// temporary workaround, see +// https://github.com/openSUSE/snapper/issues/459, fixed properly in +// btrfs-progs 4.19.1 +#undef swap +#endif #endif #include <algorithm> #include <functional> @@ -566,8 +572,8 @@ TreeSearchOpts tree_search_opts(BTRFS_QGROUP_RELATION_KEY); tree_search_opts.min_offset = tree_search_opts.max_offset = parent; - tree_search_opts.callback = [parent, &ret](const struct btrfs_ioctl_search_args& args, - const struct btrfs_ioctl_search_header& sh) + tree_search_opts.callback = [&ret](const struct btrfs_ioctl_search_args& args, + const struct btrfs_ioctl_search_header& sh) { ret.push_back(sh.objectid); }; @@ -585,8 +591,8 @@ TreeSearchOpts tree_search_opts(BTRFS_QGROUP_INFO_KEY); tree_search_opts.min_offset = tree_search_opts.max_offset = qgroup; - tree_search_opts.callback = [qgroup, &qgroup_usage](const struct btrfs_ioctl_search_args& args, - const struct btrfs_ioctl_search_header& sh) + tree_search_opts.callback = [&qgroup_usage](const struct btrfs_ioctl_search_args& args, + const struct btrfs_ioctl_search_header& sh) { struct btrfs_qgroup_info_item info; memcpy(&info, (struct btrfs_qgroup_info_item*)(args.buf + sizeof(sh)), sizeof(info)); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/snapper/FileUtils.cc new/snapper-0.8.1/snapper/FileUtils.cc --- old/snapper-0.8.0/snapper/FileUtils.cc 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/snapper/FileUtils.cc 2018-12-06 01:00:00.000000000 +0100 @@ -1,5 +1,6 @@ /* * Copyright (c) [2011-2014] Novell, Inc. + * Copyright (c) 2018 SUSE LLC * * All Rights Reserved. * @@ -84,8 +85,11 @@ dirfd = ::openat(dir.dirfd, name.c_str(), O_RDONLY | O_NOFOLLOW | O_NOATIME | O_CLOEXEC); if (dirfd < 0) - SN_THROW(IOErrorException(sformat("open failed path:%s errno:%d (%s)", dir.fullname().c_str(), + { + string failed_path = dir.fullname() + "/" + name; + SN_THROW(IOErrorException(sformat("open failed path:%s errno:%d (%s)", failed_path.c_str(), errno, stringerror(errno).c_str()))); + } struct stat buf; if (fstat(dirfd, &buf) != 0) @@ -195,6 +199,24 @@ vector<string> ret; +#if defined(__GLIBC__) && ((__GLIBC__ > 2) || ((__GLIBC__ == 2) && (__GLIBC_MINOR__ >= 24))) + + // Since glibc 2.24 readdir is thread safe under certain + // condidtions, which apply here, and readdir_r is deprecated + // (see readdir(3)). + + struct dirent* ep = nullptr; + + rewinddir(dp); + while ((ep = readdir(dp)) != nullptr) + { + if (strcmp(ep->d_name, ".") != 0 && strcmp(ep->d_name, "..") != 0 && + pred(ep->d_type, ep->d_name)) + ret.push_back(ep->d_name); + } + +#else + long sz = fpathconf(dirfd, _PC_NAME_MAX); if (sz == -1) sz = NAME_MAX; @@ -212,6 +234,8 @@ free(ep); +#endif + closedir(dp); return ret; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/snapper/Lvm.cc new/snapper-0.8.1/snapper/Lvm.cc --- old/snapper-0.8.0/snapper/Lvm.cc 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/snapper/Lvm.cc 2018-12-06 01:00:00.000000000 +0100 @@ -63,7 +63,7 @@ Lvm::Lvm(const string& subvolume, const string& root_prefix, const string& mount_type) : Filesystem(subvolume, root_prefix), mount_type(mount_type), caps(LvmCapabilities::get_lvm_capabilities()), - cache(LvmCache::get_lvm_cache()), sh(NULL) + cache(LvmCache::get_lvm_cache()) { if (access(LVCREATEBIN, X_OK) != 0) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/snapper/Lvm.h new/snapper-0.8.1/snapper/Lvm.h --- old/snapper-0.8.0/snapper/Lvm.h 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/snapper/Lvm.h 2018-12-06 01:00:00.000000000 +0100 @@ -115,7 +115,6 @@ const string mount_type; const LvmCapabilities* caps; LvmCache* cache; - SelinuxLabelHandle* sh; bool detectThinVolumeNames(const MtabData& mtab_data); void activateSnapshot(const string& vg_name, const string& lv_name) const; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/snapper/Version.h new/snapper-0.8.1/snapper/Version.h --- old/snapper-0.8.0/snapper/Version.h 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/snapper/Version.h 2018-12-06 01:00:00.000000000 +0100 @@ -25,7 +25,7 @@ #define LIBSNAPPER_MAJOR="4" -#define LIBSNAPPER_MINOR="4" +#define LIBSNAPPER_MINOR="5" #define LIBSNAPPER_PATCHLEVEL="0" #define LIBSNAPPER_VERSION ( LIBSNAPPER_MAJOR * 10000 + \\ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.0/snapper.spec.in new/snapper-0.8.1/snapper.spec.in --- old/snapper-0.8.0/snapper.spec.in 2018-10-30 01:00:00.000000000 +0100 +++ new/snapper-0.8.1/snapper.spec.in 2018-12-06 01:00:00.000000000 +0100 @@ -78,7 +78,7 @@ Supplements: btrfsprogs %endif Summary: Tool for filesystem snapshot management -License: GPL-2.0 +License: GPL-2.0-only Group: System/Packages Url: http://snapper.io/ ++++++ snapper-Debian_7.0.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.334547925 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.334547925 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-Debian_8.0.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.346547913 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.346547913 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-Debian_9.0.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.366547893 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.366547893 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-xUbuntu_14.04.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.378547882 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.378547882 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-xUbuntu_14.10.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.390547870 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.394547865 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-xUbuntu_15.04.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.410547850 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.414547845 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-xUbuntu_15.10.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.422547838 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.422547838 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-xUbuntu_16.04.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.442547818 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.442547818 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-xUbuntu_16.10.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.454547806 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.454547806 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-xUbuntu_17.04.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.474547786 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.474547786 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-xUbuntu_17.10.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.486547774 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.486547774 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-xUbuntu_18.04.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.514547745 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.514547745 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2 ++++++ snapper-xUbuntu_18.10.dsc ++++++ --- /var/tmp/diff_new_pack.ICM67d/_old 2018-12-10 12:27:59.526547734 +0100 +++ /var/tmp/diff_new_pack.ICM67d/_new 2018-12-10 12:27:59.526547734 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.8.0 +Version: 0.8.1 Binary: snapper Maintainer: Arvin Schnell <[email protected]> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -20ffd10345e38bdc4bd51f75cd8233fd 591033 snapper-0.8.0.tar.bz2 +2a1349c07b1a8151e1c770e53904d1c4 591143 snapper-0.8.1.tar.bz2
