Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libstorage-ng for openSUSE:Factory 
checked in at 2024-03-01 23:35:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libstorage-ng (Old)
 and      /work/SRC/openSUSE:Factory/.libstorage-ng.new.1770 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libstorage-ng"

Fri Mar  1 23:35:51 2024 rev:264 rq:1154153 version:4.5.196

Changes:
--------
--- /work/SRC/openSUSE:Factory/libstorage-ng/libstorage-ng.changes      
2024-02-28 19:44:55.081015974 +0100
+++ /work/SRC/openSUSE:Factory/.libstorage-ng.new.1770/libstorage-ng.changes    
2024-03-01 23:36:00.838345375 +0100
@@ -1,0 +2,24 @@
+Fri Mar 1 15:41:31 UTC 2024 - aschn...@suse.com
+
+- Translated using Weblate (Portuguese (Brazil)) (bsc#1149754)
+- 4.5.196
+
+--------------------------------------------------------------------
+Fri Mar 1 15:31:19 UTC 2024 - aschn...@suse.com
+
+- Translated using Weblate (Italian) (bsc#1149754)
+
+--------------------------------------------------------------------
+Fri Mar 1 09:32:39 UTC 2024 - aschn...@suse.com
+
+- merge gh#openSUSE/libstorage-ng#989
+- simplify memory handling in SystemCmd class
+- 4.5.195
+
+--------------------------------------------------------------------
+Thu Feb 29 12:21:50 UTC 2024 - aschn...@suse.com
+
+- Translated using Weblate (German) (bsc#1149754)
+- 4.5.194
+
+--------------------------------------------------------------------

Old:
----
  libstorage-ng-4.5.193.tar.xz

New:
----
  libstorage-ng-4.5.196.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libstorage-ng.spec ++++++
--- /var/tmp/diff_new_pack.OVJlVT/_old  2024-03-01 23:36:01.470368231 +0100
+++ /var/tmp/diff_new_pack.OVJlVT/_new  2024-03-01 23:36:01.474368376 +0100
@@ -18,7 +18,7 @@
 
 %define libname %{name}1
 Name:           libstorage-ng
-Version:        4.5.193
+Version:        4.5.196
 Release:        0
 Summary:        Library for storage management
 License:        GPL-2.0-only

++++++ libstorage-ng-4.5.193.tar.xz -> libstorage-ng-4.5.196.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libstorage-ng-4.5.193/VERSION 
new/libstorage-ng-4.5.196/VERSION
--- old/libstorage-ng-4.5.193/VERSION   2024-02-28 12:13:01.000000000 +0100
+++ new/libstorage-ng-4.5.196/VERSION   2024-03-01 19:42:51.000000000 +0100
@@ -1 +1 @@
-4.5.193
+4.5.196
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libstorage-ng-4.5.193/po/de.po 
new/libstorage-ng-4.5.196/po/de.po
--- old/libstorage-ng-4.5.193/po/de.po  2024-02-28 12:13:01.000000000 +0100
+++ new/libstorage-ng-4.5.196/po/de.po  2024-03-01 19:42:51.000000000 +0100
@@ -14,10 +14,10 @@
 "Project-Id-Version: YaST (@memory@)\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2024-02-06 09:28+0100\n"
-"PO-Revision-Date: 2023-05-13 02:15+0000\n"
-"Last-Translator: Ettore Atalan <atalantt...@googlemail.com>\n"
-"Language-Team: German <https://l10n.opensuse.org/projects/libstorage/ng-";
-"master/de/>\n"
+"PO-Revision-Date: 2024-02-29 14:42+0000\n"
+"Last-Translator: Gemineo <vista...@gemineo.de>\n"
+"Language-Team: German <https://l10n.opensuse.org/projects/libstorage/";
+"ng-master/de/>\n"
 "Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -354,9 +354,8 @@
 msgstr "Bcache-Cacheset"
 
 #. TRANSLATORS: name of object
-#, fuzzy
 msgid "Bcachefs"
-msgstr "Bcache"
+msgstr "Bcachefs"
 
 #. TRANSLATORS: name of object
 msgid "BitLocker"
@@ -402,9 +401,9 @@
 
 #. TRANSLATORS: displayed before action,
 #. %1$s is replaced by partition name (e.g. /dev/sda1)
-#, fuzzy, c-format
+#, c-format
 msgid "Clear no-automount flag of partition %1$s"
-msgstr "Boot-Flag der Partition %1$s reinigen"
+msgstr "no-automount-Flag von Partition %1$s bereinigen"
 
 #. TRANSLATORS: displayed before action,
 #. %1$s is replaced by the subvolume path (e.g. var/log),
@@ -449,9 +448,9 @@
 
 #. TRANSLATORS: displayed during action,
 #. %1$s is replaced by partition name (e.g. /dev/sda1)
-#, fuzzy, c-format
+#, c-format
 msgid "Clearing no-automount flag of partition %1$s"
-msgstr "Boot-Flag von Partition %1$s wird gelöscht"
+msgstr "no-automount-Flag von Partition %1$s wird bereinigt"
 
 #. TRANSLATORS: displayed during action,
 #. %1$s is replaced by the subvolume path (e.g. var/log),
@@ -1682,7 +1681,7 @@
 #. TRANSLATORS: Error message displayed during probing,
 #. %1$s is replaced by a list of device names joined by newlines (e.g.
 #. /dev/test/cached\n/dev/test/snapshot)
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Detected LVM logical volumes of unsupported types:\n"
 "\n"
@@ -1691,7 +1690,7 @@
 "These logical volumes are ignored. Operations on the\n"
 "corresponding volume groups may fail."
 msgstr ""
-"Logische LVM-Volumes auf nicht unterstützten Gerätetypen erkannt:\n"
+"Logische LVM-Volumes mit nicht unterstützten Typen erkannt:\n"
 "\n"
 "%1$s\n"
 "\n"
@@ -2009,7 +2008,7 @@
 #. TRANSLATORS:
 #. %1$s is replaced with the partition name (e.g. /dev/sda1),
 #. %2$s is replaced with the size (e.g. 2.00 GiB)
-#, fuzzy, c-format
+#, c-format
 msgid "Format partition %1$s (%2$s) as encrypted swap"
 msgstr "Partition %1$s (%2$s) als verschlüsselte swap formatieren"
 
@@ -2998,9 +2997,9 @@
 
 #. TRANSLATORS: displayed before action,
 #. %1$s is replaced by partition name (e.g. /dev/sda1)
-#, fuzzy, c-format
+#, c-format
 msgid "Set no-automount flag of partition %1$s"
-msgstr "Boot-Flag von Partition %1$s setzen"
+msgstr "no-automount-Flag von Partition %1$s festlegen"
 
 #. TRANSLATORS: displayed before action,
 #. %1$s is replaced by the subvolume path (e.g. var/log),
@@ -3117,9 +3116,9 @@
 
 #. TRANSLATORS: displayed during action,
 #. %1$s is replaced by partition name (e.g. /dev/sda1)
-#, fuzzy, c-format
+#, c-format
 msgid "Setting no-automount flag of partition %1$s"
-msgstr "Boot-Flag von Partition %1$s wird gesetzt"
+msgstr "no-automount-Flag von Partition %1$s wird festgelegt"
 
 #. TRANSLATORS: displayed during action,
 #. %1$s is replaced by the subvolume path (e.g. var/log),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libstorage-ng-4.5.193/po/it.po 
new/libstorage-ng-4.5.196/po/it.po
--- old/libstorage-ng-4.5.193/po/it.po  2024-02-28 12:13:01.000000000 +0100
+++ new/libstorage-ng-4.5.196/po/it.po  2024-03-01 19:42:51.000000000 +0100
@@ -13,10 +13,10 @@
 "Project-Id-Version: libstorage\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2024-02-06 09:28+0100\n"
-"PO-Revision-Date: 2023-02-07 14:14+0000\n"
+"PO-Revision-Date: 2024-03-01 18:42+0000\n"
 "Last-Translator: Davide Aiello <davide.aie...@novilingulists.com>\n"
-"Language-Team: Italian <https://l10n.opensuse.org/projects/libstorage/ng-";
-"master/it/>\n"
+"Language-Team: Italian <https://l10n.opensuse.org/projects/libstorage/";
+"ng-master/it/>\n"
 "Language: it\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -363,9 +363,8 @@
 msgstr "Set di cache Bcache"
 
 #. TRANSLATORS: name of object
-#, fuzzy
 msgid "Bcachefs"
-msgstr "Bcache"
+msgstr "Bcachefs"
 
 #. TRANSLATORS: name of object
 msgid "BitLocker"
@@ -411,9 +410,9 @@
 
 #. TRANSLATORS: displayed before action,
 #. %1$s is replaced by partition name (e.g. /dev/sda1)
-#, fuzzy, c-format
+#, c-format
 msgid "Clear no-automount flag of partition %1$s"
-msgstr "Cancellare il flag di avvio della partizione %1$s"
+msgstr "Cancellare il flag senza montaggio automatico della partizione %1$s"
 
 #. TRANSLATORS: displayed before action,
 #. %1$s is replaced by the subvolume path (e.g. var/log),
@@ -460,9 +459,9 @@
 
 #. TRANSLATORS: displayed during action,
 #. %1$s is replaced by partition name (e.g. /dev/sda1)
-#, fuzzy, c-format
+#, c-format
 msgid "Clearing no-automount flag of partition %1$s"
-msgstr "Cancellazione del flag di avvio della partizione %1$s"
+msgstr "Cancellazione del flag senza montaggio automatico della partizione 
%1$s"
 
 #. TRANSLATORS: displayed during action,
 #. %1$s is replaced by the subvolume path (e.g. var/log),
@@ -3073,9 +3072,9 @@
 #. %1$s is replaced with the old logical volume name (e.g. foo),
 #. %2$s is replaced with the new logical volume name (e.g. bar),
 #. %3$s is replaced with the volume group name (e.g. system)
-#, fuzzy, c-format
+#, c-format
 msgid "Rename logical volume %1$s to %2$s on volume group %3$s"
-msgstr "Creare il volume logico %1$s (%2$s) sul gruppo di volumi %3$s"
+msgstr "Rinominare il volume logico %1$s (%2$s) sul gruppo di volumi %3$s"
 
 #. TRANSLATORS: displayed before action,
 #. %1$s is replaced by mount point (e.g. /home),
@@ -3088,9 +3087,9 @@
 #. TRANSLATORS:
 #. %1$s is replaced with the old volume group name (e.g. foo),
 #. %2$s is replaced with the new volume group name (e.g. bar)
-#, fuzzy, c-format
+#, c-format
 msgid "Rename volume group %1$s to %2$s"
-msgstr "Creare il gruppo di volumi %1$s (%2$s)"
+msgstr "RInominare il gruppo di volumi %1$s (%2$s)"
 
 #. TRANSLATORS: displayed during action,
 #. %1$s is replaced by device name (e.g. /dev/sda6),
@@ -3214,9 +3213,9 @@
 
 #. TRANSLATORS: displayed before action,
 #. %1$s is replaced by partition name (e.g. /dev/sda1)
-#, fuzzy, c-format
+#, c-format
 msgid "Set no-automount flag of partition %1$s"
-msgstr "Impostare il flag di avvio della partizione %1$s"
+msgstr "Impostare il flag senza montaggio automamtico della partizione %1$s"
 
 #. TRANSLATORS: displayed before action,
 #. %1$s is replaced by the subvolume path (e.g. var/log),
@@ -3335,9 +3334,9 @@
 
 #. TRANSLATORS: displayed during action,
 #. %1$s is replaced by partition name (e.g. /dev/sda1)
-#, fuzzy, c-format
+#, c-format
 msgid "Setting no-automount flag of partition %1$s"
-msgstr "Impostazione del flag di avvio della partizione %1$s"
+msgstr "Impostazione del flag senza montaggio automatico della partizione %1$s"
 
 #. TRANSLATORS: displayed during action,
 #. %1$s is replaced by the subvolume path (e.g. var/log),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libstorage-ng-4.5.193/po/pt_BR.po 
new/libstorage-ng-4.5.196/po/pt_BR.po
--- old/libstorage-ng-4.5.193/po/pt_BR.po       2024-02-28 12:13:01.000000000 
+0100
+++ new/libstorage-ng-4.5.196/po/pt_BR.po       2024-03-01 19:42:51.000000000 
+0100
@@ -12,8 +12,8 @@
 "Project-Id-Version: YaST (@memory@)\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2024-02-06 09:28+0100\n"
-"PO-Revision-Date: 2023-12-05 21:02+0000\n"
-"Last-Translator: Luiz Fernando Ranghetti <elcheviv...@gmail.com>\n"
+"PO-Revision-Date: 2024-03-01 18:42+0000\n"
+"Last-Translator: Samanta Magalhaes <samanta_texttr...@outlook.com>\n"
 "Language-Team: Portuguese (Brazil) <https://l10n.opensuse.org/projects/";
 "libstorage/ng-master/pt_BR/>\n"
 "Language: pt_BR\n"
@@ -354,9 +354,8 @@
 msgstr "Conjunto de Caches Bcache"
 
 #. TRANSLATORS: name of object
-#, fuzzy
 msgid "Bcachefs"
-msgstr "Bcache"
+msgstr "Bcachefs"
 
 #. TRANSLATORS: name of object
 msgid "BitLocker"
@@ -1673,7 +1672,7 @@
 #. TRANSLATORS: Error message displayed during probing,
 #. %1$s is replaced by a list of device names joined by newlines (e.g.
 #. /dev/test/cached\n/dev/test/snapshot)
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Detected LVM logical volumes of unsupported types:\n"
 "\n"
@@ -2003,7 +2002,7 @@
 #. TRANSLATORS:
 #. %1$s is replaced with the partition name (e.g. /dev/sda1),
 #. %2$s is replaced with the size (e.g. 2.00 GiB)
-#, fuzzy, c-format
+#, c-format
 msgid "Format partition %1$s (%2$s) as encrypted swap"
 msgstr "Formatar partição %1$s (%2$s) como swap criptografado"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libstorage-ng-4.5.193/storage/Utils/SystemCmd.cc 
new/libstorage-ng-4.5.196/storage/Utils/SystemCmd.cc
--- old/libstorage-ng-4.5.193/storage/Utils/SystemCmd.cc        2024-02-28 
12:13:01.000000000 +0100
+++ new/libstorage-ng-4.5.196/storage/Utils/SystemCmd.cc        2024-03-01 
19:42:51.000000000 +0100
@@ -300,32 +300,6 @@
 
 
        /**
-        * Class to temporarily hold copies of args or env for execle() and 
execvpe().
-        */
-       class TmpForExec : boost::noncopyable
-       {
-       public:
-
-           TmpForExec(const vector<char*>& values) : values(values) {}
-           ~TmpForExec();
-
-           char* const * get() const { return &values[0]; }
-
-       private:
-
-           vector<char*> values;
-
-       };
-
-
-       TmpForExec::~TmpForExec()
-       {
-           for (char* v : values)
-               free(v);
-       }
-
-
-       /**
         * Struct to hold information about failures of the child between fork 
and exec. The
         * struct is passed via a pipe from the client to the parent. The 
information is so
         * far only used for logging.
@@ -369,14 +343,14 @@
         *
         * Not async‐signal‐safe, see fork(2) and signal-safety(7).
         */
-       TmpForExec make_args() const;
+       vector<const char*> make_args() const;
 
        /**
         * Constructs the environment for the child process.
         *
         * Not async‐signal‐safe, see fork(2) and signal-safety(7).
         */
-       TmpForExec make_env() const;
+       vector<const char*> make_env() const;
 
        SystemCmd& system_cmd;
 
@@ -437,8 +411,8 @@
 
        const int max_fd = getdtablesize();
 
-       const TmpForExec args_p(make_args());
-       const TmpForExec env_p(make_env());
+       const vector<const char*> args_p(make_args());
+       const vector<const char*> env_p(make_env());
 
        child_pid = fork();
        if (child_pid == -1)
@@ -478,10 +452,17 @@
            for (int fd = 3; fd < max_fd; ++fd)
                fcntl(fd, F_SETFD, FD_CLOEXEC);
 
+           // The const_casts below should be fine since the exec functions do 
not modify
+           // "pointers and the strings to which those arrays point". Assume 
that also
+           // applies to GNU execvpe.
+           // 
https://pubs.opengroup.org/onlinepubs/9699919799/functions/exec.html
+
            if (system_cmd.args().empty())
-               execle(SH_BIN, SH_BIN, "-c", system_cmd.command().c_str(), 
nullptr, env_p.get());
+               execle(SH_BIN, SH_BIN, "-c", system_cmd.command().c_str(), 
nullptr,
+                      const_cast<char* const *>(env_p.data()));
            else
-               execvpe(system_cmd.args()[0].c_str(), args_p.get(), 
env_p.get());
+               execvpe(system_cmd.args()[0].c_str(), const_cast<char* const 
*>(args_p.data()),
+                       const_cast<char* const *>(env_p.data()));
 
            // If we get here the exec has failed. Depending on errno we return 
an
            // error code like the shell does ('sh -c ...').
@@ -737,36 +718,28 @@
     }
 
 
-    TmpForExec
+    vector<const char*>
     SystemCmd::Executor::make_args() const
     {
-       vector<char*> args;
+       vector<const char*> args;
+       args.reserve(system_cmd.options.args.size() + 1);
 
        for (const string& v : system_cmd.options.args)
-       {
-           char* p = strdup(v.c_str());
-           ST_CHECK_NEW(p);
-           args.push_back(p);
-       }
-
+           args.push_back(v.c_str());
        args.push_back(nullptr);
 
        return args;
     }
 
 
-    TmpForExec
+    vector<const char*>
     SystemCmd::Executor::make_env() const
     {
-       vector<char*> envs;
+       vector<const char*> envs;
+       envs.reserve(system_cmd.options.envs.size() + 1);
 
        for (const string& v : system_cmd.options.envs)
-       {
-           char* p = strdup(v.c_str());
-           ST_CHECK_NEW(p);
-           envs.push_back(p);
-       }
-
+           envs.push_back(v.c_str());
        envs.push_back(nullptr);
 
        return envs;

Reply via email to