Script 'mail_helper' called by obssrc Hello community,
here is the log from the commit of package mozilla-nspr for openSUSE:Factory checked in at 2021-06-01 10:33:03 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mozilla-nspr (Old) and /work/SRC/openSUSE:Factory/.mozilla-nspr.new.1898 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mozilla-nspr"
Tue Jun 1 10:33:03 2021 rev:80 rq:895808 version:4.31
Changes: -------- --- /work/SRC/openSUSE:Factory/mozilla-nspr/mozilla-nspr.changes 2021-04-23 17:49:50.634713532 +0200 +++ /work/SRC/openSUSE:Factory/.mozilla-nspr.new.1898/mozilla-nspr.changes 2021-06-01 10:33:07.784370523 +0200 @@ -1,0 +2,7 @@ +Thu May 27 16:54:45 UTC 2021 - Andreas Stieger andreas.stieger@gmx.de + +- update to version 4.31: + * Lock access to PRCallOnceType members in PR_CallOnce* for + thread safety bmo#1686138 + +-------------------------------------------------------------------
Old: ---- nspr-4.30.tar.gz
New: ---- nspr-4.31.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences: ------------------ ++++++ mozilla-nspr.spec ++++++ --- /var/tmp/diff_new_pack.M42JMH/_old 2021-06-01 10:33:08.404371578 +0200 +++ /var/tmp/diff_new_pack.M42JMH/_new 2021-06-01 10:33:08.404371578 +0200 @@ -18,7 +18,7 @@
Name: mozilla-nspr -Version: 4.30 +Version: 4.31 Release: 0 Summary: Netscape Portable Runtime License: MPL-2.0
++++++ nspr-4.30.tar.gz -> nspr-4.31.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nspr-4.30/nspr/.hg_archival.txt new/nspr-4.31/nspr/.hg_archival.txt --- old/nspr-4.30/nspr/.hg_archival.txt 2021-03-16 15:53:01.000000000 +0100 +++ new/nspr-4.31/nspr/.hg_archival.txt 2021-05-26 18:06:44.000000000 +0200 @@ -1,4 +1,4 @@ repo: a4b34919bf34db2ee22acbbc305693c8980b6dc6 -node: 023a0ccfcb5c2745bd1d4864cc5f259784c958c6 +node: 0d82c2ba909bc34ab7ecfce64097816ac217aa31 branch: default -tag: NSPR_4_30_RTM +tag: NSPR_4_31_RTM diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nspr-4.30/nspr/configure new/nspr-4.31/nspr/configure --- old/nspr-4.30/nspr/configure 2021-03-16 15:53:01.000000000 +0100 +++ new/nspr-4.31/nspr/configure 2021-05-26 18:06:44.000000000 +0200 @@ -2486,7 +2486,7 @@ program_prefix=${target_alias}-
MOD_MAJOR_VERSION=4 -MOD_MINOR_VERSION=30 +MOD_MINOR_VERSION=31 MOD_PATCH_VERSION=0 NSPR_MODNAME=nspr20 _HAVE_PTHREADS= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nspr-4.30/nspr/configure.in new/nspr-4.31/nspr/configure.in --- old/nspr-4.30/nspr/configure.in 2021-03-16 15:53:01.000000000 +0100 +++ new/nspr-4.31/nspr/configure.in 2021-05-26 18:06:44.000000000 +0200 @@ -15,7 +15,7 @@ dnl = Defaults dnl ======================================================== MOD_MAJOR_VERSION=4 -MOD_MINOR_VERSION=30 +MOD_MINOR_VERSION=31 MOD_PATCH_VERSION=0 NSPR_MODNAME=nspr20 _HAVE_PTHREADS= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nspr-4.30/nspr/pr/include/prinit.h new/nspr-4.31/nspr/pr/include/prinit.h --- old/nspr-4.30/nspr/pr/include/prinit.h 2021-03-16 15:53:01.000000000 +0100 +++ new/nspr-4.31/nspr/pr/include/prinit.h 2021-05-26 18:06:44.000000000 +0200 @@ -31,9 +31,9 @@ ** The format of the version string is ** "<major version>.<minor version>[.<patch level>] [<Beta>]" */ -#define PR_VERSION "4.30" +#define PR_VERSION "4.31" #define PR_VMAJOR 4 -#define PR_VMINOR 30 +#define PR_VMINOR 31 #define PR_VPATCH 0 #define PR_BETA PR_FALSE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nspr-4.30/nspr/pr/src/misc/prinit.c new/nspr-4.31/nspr/pr/src/misc/prinit.c --- old/nspr-4.30/nspr/pr/src/misc/prinit.c 2021-03-16 15:53:01.000000000 +0100 +++ new/nspr-4.31/nspr/pr/src/misc/prinit.c 2021-05-26 18:06:44.000000000 +0200 @@ -771,10 +771,15 @@ _PR_ImplicitInitialization(); }
- if (!once->initialized) { + PR_Lock(mod_init.ml); + PRIntn initialized = once->initialized; + PRStatus status = once->status; + PR_Unlock(mod_init.ml); + if (!initialized) { if (PR_ATOMIC_SET(&once->inProgress, 1) == 0) { - once->status = (*func)(); + status = (*func)(); PR_Lock(mod_init.ml); + once->status = status; once->initialized = 1; PR_NotifyAllCondVar(mod_init.cv); PR_Unlock(mod_init.ml); @@ -783,14 +788,18 @@ while (!once->initialized) { PR_WaitCondVar(mod_init.cv, PR_INTERVAL_NO_TIMEOUT); } + status = once->status; PR_Unlock(mod_init.ml); + if (PR_SUCCESS != status) { + PR_SetError(PR_CALL_ONCE_ERROR, 0); + } } - } else { - if (PR_SUCCESS != once->status) { - PR_SetError(PR_CALL_ONCE_ERROR, 0); - } + return status; + } + if (PR_SUCCESS != status) { + PR_SetError(PR_CALL_ONCE_ERROR, 0); } - return once->status; + return status; }
PR_IMPLEMENT(PRStatus) PR_CallOnceWithArg( @@ -802,10 +811,15 @@ _PR_ImplicitInitialization(); }
- if (!once->initialized) { + PR_Lock(mod_init.ml); + PRIntn initialized = once->initialized; + PRStatus status = once->status; + PR_Unlock(mod_init.ml); + if (!initialized) { if (PR_ATOMIC_SET(&once->inProgress, 1) == 0) { - once->status = (*func)(arg); + status = (*func)(arg); PR_Lock(mod_init.ml); + once->status = status; once->initialized = 1; PR_NotifyAllCondVar(mod_init.cv); PR_Unlock(mod_init.ml); @@ -814,14 +828,18 @@ while (!once->initialized) { PR_WaitCondVar(mod_init.cv, PR_INTERVAL_NO_TIMEOUT); } + status = once->status; PR_Unlock(mod_init.ml); + if (PR_SUCCESS != status) { + PR_SetError(PR_CALL_ONCE_ERROR, 0); + } } - } else { - if (PR_SUCCESS != once->status) { - PR_SetError(PR_CALL_ONCE_ERROR, 0); - } + return status; + } + if (PR_SUCCESS != status) { + PR_SetError(PR_CALL_ONCE_ERROR, 0); } - return once->status; + return status; }
PRBool _PR_Obsolete(const char *obsolete, const char *preferred) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nspr-4.30/nspr/pr/tests/vercheck.c new/nspr-4.31/nspr/pr/tests/vercheck.c --- old/nspr-4.30/nspr/pr/tests/vercheck.c 2021-03-16 15:53:01.000000000 +0100 +++ new/nspr-4.31/nspr/pr/tests/vercheck.c 2021-05-26 18:06:44.000000000 +0200 @@ -42,6 +42,7 @@ "4.10.10", "4.11", "4.12", "4.13", "4.14", "4.15", "4.16", "4.17", "4.18", "4.19", "4.20", "4.21", "4.22", "4.23", "4.24", "4.25", "4,26", "4.27", "4.28", "4.29", + "4.30", PR_VERSION };
@@ -57,8 +58,8 @@ "3.0", "3.0.1", "3.1", "3.1.1", "3.1.2", "3.1.3", "3.5", "3.5.1", - "4.30.1", - "4.31", "4.31.1", + "4.31.1", + "4.32", "4.32.1", "10.0", "11.1", "12.14.20" };