Hello community, here is the log from the commit of package yast2-core checked in at Tue Oct 31 18:15:58 CET 2006. -------- --- yast2-core/yast2-core.changes 2006-10-23 10:34:37.000000000 +0200 +++ /mounts/work_src_done/STABLE/yast2-core/yast2-core.changes 2006-10-31 16:58:12.000000000 +0100 @@ -1,0 +2,7 @@ +Tue Oct 31 16:50:39 CET 2006 - mvidner@suse.cz + +- ini-agent: use C locale when building regular expressions so that + A-Z works for Estonian (#177560). +- 2.14.4 + +------------------------------------------------------------------- Old: ---- yast2-core-2.14.3.tar.bz2 New: ---- yast2-core-2.14.4.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-core.spec ++++++ --- /var/tmp/diff_new_pack.E0Y6KA/_old 2006-10-31 18:15:35.000000000 +0100 +++ /var/tmp/diff_new_pack.E0Y6KA/_new 2006-10-31 18:15:35.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package yast2-core (Version 2.14.3) +# spec file for package yast2-core (Version 2.14.4) # # Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -11,12 +11,12 @@ # norootforbuild Name: yast2-core -Version: 2.14.3 +Version: 2.14.4 Release: 1 License: GNU General Public License (GPL) - all versions Group: System/YaST BuildRoot: %{_tmppath}/%{name}-%{version}-build -Source0: yast2-core-2.14.3.tar.bz2 +Source0: yast2-core-2.14.4.tar.bz2 prefix: /usr # obviously BuildRequires: gcc-c++ @@ -114,7 +114,7 @@ Stanislav Visnovsky <visnov@suse.cz> %prep -%setup -n yast2-core-2.14.3 +%setup -n yast2-core-2.14.4 %build %{prefix}/bin/y2tool y2autoconf @@ -186,6 +186,10 @@ /usr/share/YaST2/data/devtools/bin/generateYCPWrappers %changelog -n yast2-core +* Tue Oct 31 2006 - mvidner@suse.cz +- ini-agent: use C locale when building regular expressions so that + A-Z works for Estonian (#177560). +- 2.14.4 * Mon Oct 23 2006 - mvidner@suse.cz - Worked around building with doxygen 1.5.0 by not including liby2util.tag. ++++++ yast2-core-2.14.3.tar.bz2 -> yast2-core-2.14.4.tar.bz2 ++++++ ++++ 1830 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-core-2.14.3/Makefile.am new/yast2-core-2.14.4/Makefile.am --- old/yast2-core-2.14.3/Makefile.am 2006-10-23 10:35:06.000000000 +0200 +++ new/yast2-core-2.14.4/Makefile.am 2006-10-31 16:58:36.000000000 +0100 @@ -7,8 +7,7 @@ # #where devtools are -PREFIX := $(shell pkg-config --print-errors --variable=prefix yast2-devtools) -Y2TOOL = $(PREFIX)/bin/y2tool +Y2TOOL = $(Y2DEVTOOLS_PREFIX)/bin/y2tool VERSION = $(shell cat $(srcdir)/VERSION) RPMNAME = $(shell cat $(srcdir)/RPMNAME) @@ -20,7 +19,7 @@ # do we do Makefile.am for devtools? It is a little special... IS_DEVTOOLS = $(findstring yast2-devtools,$(RPMNAME)) -DEVTOOLS_DIR = $(if $(IS_DEVTOOLS),$(srcdir)/devtools,$(PREFIX)/share/YaST2/data/devtools) +DEVTOOLS_DIR = $(if $(IS_DEVTOOLS),$(srcdir)/devtools,$(Y2DEVTOOLS_PREFIX)/share/YaST2/data/devtools) ALL_PACKAGES = $(DEVTOOLS_DIR)/admin/all-packages LEGALESE_DIR = $(if $(HAS_YAST_LICENSE),$(DEVTOOLS_DIR)/admin/copyright/yast,$(DEVTOOLS_DIR)/admin/copyright/gpl) @@ -34,7 +33,7 @@ AUTOMAKE_OPTIONS = foreign dist-bzip2 # where devtools instal m4 snippets # argh, executed literally -#ACLOCAL_AMFLAGS = -I $(PREFIX)/share/aclocal +#ACLOCAL_AMFLAGS = -I $(Y2DEVTOOLS_PREFIX)/share/aclocal ACLOCAL_AMFLAGS = -I `if test -d ./devtools/admin; then echo ./devtools/admin; else pkg-config --print-errors --variable=datadir yast2-devtools; fi`/aclocal Makefile.am.common: $(DEVTOOLS_DIR)/admin/Makefile.am.common diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-core-2.14.3/VERSION new/yast2-core-2.14.4/VERSION --- old/yast2-core-2.14.3/VERSION 2006-10-23 10:32:24.000000000 +0200 +++ new/yast2-core-2.14.4/VERSION 2006-10-31 16:49:26.000000000 +0100 @@ -1 +1 @@ -2.14.3 +2.14.4 diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-core-2.14.3/agent-ini/src/IniParser.cc new/yast2-core-2.14.4/agent-ini/src/IniParser.cc --- old/yast2-core-2.14.3/agent-ini/src/IniParser.cc 2006-09-19 14:20:01.000000000 +0200 +++ new/yast2-core-2.14.4/agent-ini/src/IniParser.cc 2006-10-31 16:58:23.000000000 +0100 @@ -8,7 +8,7 @@ * Petr Blahos <pblahos@suse.cz> * Martin Vidner <mvidner@suse.cz> * - * $Id: IniParser.cc 32969 2006-09-19 12:21:30Z mvidner $ + * $Id: IniParser.cc 33951 2006-10-31 15:58:21Z mvidner $ */ #include "config.h" @@ -28,6 +28,30 @@ IMPL_BASE_POINTER (Regex_t); + +TemporaryLocale::TemporaryLocale (int category, const char * locale) { + _category = category; + _oldlocale = my_setlocale (_category, NULL); + if (_oldlocale != NULL) + _oldlocale = strdup (_oldlocale); + my_setlocale (_category, locale); +} + +TemporaryLocale::~TemporaryLocale () { + if (_oldlocale != NULL) { + my_setlocale (_category, _oldlocale); + free (_oldlocale); + } +} + +char * TemporaryLocale::my_setlocale(int category, const char *locale) { + // This string may be allocated in static storage. + char * ret = setlocale (category, locale); + if (ret == NULL) + y2error ("Cannot set locale category %d to %s.", category, locale); + return ret; +} + IniParser::~IniParser () { // regex deallocation used to be here diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-core-2.14.3/agent-ini/src/IniParser.h new/yast2-core-2.14.4/agent-ini/src/IniParser.h --- old/yast2-core-2.14.3/agent-ini/src/IniParser.h 2006-09-19 14:20:01.000000000 +0200 +++ new/yast2-core-2.14.4/agent-ini/src/IniParser.h 2006-10-31 16:58:23.000000000 +0100 @@ -7,7 +7,7 @@ * Authors: * Petr Blahos <pblahos@suse.cz> * - * $Id: IniParser.h 32969 2006-09-19 12:21:30Z mvidner $ + * $Id: IniParser.h 33951 2006-10-31 15:58:21Z mvidner $ */ #ifndef __IniParser_h__ @@ -17,6 +17,7 @@ #include <ctype.h> #include <stdio.h> #include <regex.h> +#include <locale.h> #include <y2util/RepDef.h> #include <YCP.h> @@ -37,6 +38,24 @@ DEFINE_BASE_POINTER (Regex_t); +#pragma GCC visibility push(hidden) + +//! Set and later restore a locale category. +// It is restored when we go out of scope. +class TemporaryLocale +{ +public: + TemporaryLocale (int category, const char * locale); + ~TemporaryLocale (); +private: + //! call setlocale but log errors + char *my_setlocale(int category, const char *locale); + + int _category; + char * _oldlocale; +}; +#pragma GCC visibility pop + /** * Wrapper to manage regex_t * * Must not be copied because regex_t is opaque @@ -74,6 +93,9 @@ } else { + // #177560: [A-Za-z] excludes some ASCII letters in Estonian + TemporaryLocale tl (LC_ALL, "C"); + ret = regcomp (®ex, pattern.c_str (), REG_EXTENDED | (ignore_case ? REG_ICASE : 0)); if (ret) diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-core-2.14.3/configure.in new/yast2-core-2.14.4/configure.in --- old/yast2-core-2.14.3/configure.in 2006-10-23 10:35:05.000000000 +0200 +++ new/yast2-core-2.14.4/configure.in 2006-10-31 16:58:35.000000000 +0100 @@ -3,7 +3,7 @@ dnl -- This file is generated by y2autoconf 2.13.27 - DO NOT EDIT! -- dnl (edit configure.in.in instead) -AC_INIT(yast2-core, 2.14.3, http://bugs.opensuse.org/, yast2-core) +AC_INIT(yast2-core, 2.14.4, http://bugs.opensuse.org/, yast2-core) dnl Check for presence of file 'RPMNAME' AC_CONFIG_SRCDIR([RPMNAME]) @@ -17,7 +17,7 @@ AM_INIT_AUTOMAKE(tar-ustar) dnl searches for some needed programs dnl Important YaST2 variables -VERSION="2.14.3" +VERSION="2.14.4" RPMNAME="yast2-core" MAINTAINER="Martin Vidner <mvidner@suse.cz>" @@ -171,6 +171,8 @@ AC_MSG_ERROR(xgettext is missing; please install gettext-devel.) fi +Y2DEVTOOLS_PREFIX=`pkg-config --print-errors --variable=prefix yast2-devtools` +AC_SUBST(Y2DEVTOOLS_PREFIX) devtools_ybindir=`pkg-config --print-errors --variable=ybindir yast2-devtools` devtools_yast2dir=`pkg-config --print-errors --variable=yast2dir yast2-devtools` ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@suse.de