]> granicus.if.org Git - python/commitdiff
Merged revisions 83395,83417 via svnmerge from
authorGeorg Brandl <georg@python.org>
Sun, 1 Aug 2010 18:59:44 +0000 (18:59 +0000)
committerGeorg Brandl <georg@python.org>
Sun, 1 Aug 2010 18:59:44 +0000 (18:59 +0000)
svn+ssh://svn.python.org/python/branches/py3k

........
  r83395 | georg.brandl | 2010-08-01 10:49:18 +0200 (So, 01 Aug 2010) | 1 line

  #8821: do not rely on Unicode strings being terminated with a \u0000, rather explicitly check range before looking for a second surrogate character.
........
  r83417 | georg.brandl | 2010-08-01 20:38:26 +0200 (So, 01 Aug 2010) | 1 line

  #5776: fix mistakes in python specfile.  (Nobody probably uses it anyway.)
........

Misc/RPM/python-3.1.spec
Objects/unicodeobject.c

index e80cf6fd51e6308851cf743dd5825418f5bdec31..6ab1f4e8b57ff3f77ae1951ad54377ca680ad8e3 100644 (file)
@@ -35,7 +35,7 @@
 %define name python
 #--start constants--
 %define version 3.1.2
-%define libver 3.1
+%define libvers 3.1
 #--end constants--
 %define release 1pydotorg
 %define __prefix /usr
@@ -54,7 +54,7 @@ Summary: An interpreted, interactive, object-oriented programming language.
 Name: %{name}%{binsuffix}
 Version: %{version}
 Release: %{release}
-Copyright: Modified CNRI Open Source License
+License: PSF
 Group: Development/Languages
 Source: Python-%{version}.tar.bz2
 %if %{include_docs}
@@ -256,7 +256,7 @@ if [ ! -z "%{binsuffix}" ]
 then
    ( cd $RPM_BUILD_ROOT%{__prefix}/bin; rm -f python[0-9a-zA-Z]*;
          mv -f python python"%{binsuffix}" )
-   ( cd $RPM_BUILD_ROOT%{__prefix}/man/man1; mv python.1 python%{binsuffix}.1 )
+   ( cd $RPM_BUILD_ROOT%{__prefix}/share/man/man1; mv python.1 python%{binsuffix}.1 )
    ( cd $RPM_BUILD_ROOT%{__prefix}/bin; mv -f pydoc pydoc"%{binsuffix}" )
    ( cd $RPM_BUILD_ROOT%{__prefix}/bin; mv -f idle idle"%{binsuffix}" )
 fi
@@ -341,14 +341,13 @@ rm -f mainpkg.files tools.files
 %defattr(-,root,root)
 %doc Misc/README Misc/cheatsheet Misc/Porting
 %doc LICENSE Misc/ACKS Misc/HISTORY Misc/NEWS
-%{__prefix}/man/man1/python%{binsuffix}.1*
+%{__prefix}/share/man/man1/python%{binsuffix}.1*
 
 %attr(755,root,root) %dir %{__prefix}/include/python%{libvers}
 %attr(755,root,root) %dir %{__prefix}/%{libdirname}/python%{libvers}/
 %{__prefix}/%{libdirname}/python%{libvers}/*.txt
 %{__prefix}/%{libdirname}/python%{libvers}/*.py*
 %{__prefix}/%{libdirname}/python%{libvers}/pdb.doc
-%{__prefix}/%{libdirname}/python%{libvers}/profile.doc
 %{__prefix}/%{libdirname}/python%{libvers}/curses
 %{__prefix}/%{libdirname}/python%{libvers}/distutils
 %{__prefix}/%{libdirname}/python%{libvers}/encodings
index 199f34ae562c1718dc8ba7bed2878368e10b267e..a18c571e83b91a90325cd3dcf078270eed685c8b 100644 (file)
@@ -3597,7 +3597,7 @@ PyObject *PyUnicode_EncodeUnicodeEscape(const Py_UNICODE *s,
 
             ch2 = *s++;
             size--;
-            if (ch2 >= 0xDC00 && ch2 <= 0xDFFF) {
+            if (ch2 >= 0xDC00 && ch2 <= 0xDFFF && size) {
                 ucs = (((ch & 0x03FF) << 10) | (ch2 & 0x03FF)) + 0x00010000;
                 *p++ = '\\';
                 *p++ = 'U';
@@ -3839,7 +3839,7 @@ PyObject *PyUnicode_EncodeRawUnicodeEscape(const Py_UNICODE *s,
 
                 ch2 = *s++;
                 size--;
-                if (ch2 >= 0xDC00 && ch2 <= 0xDFFF) {
+                if (ch2 >= 0xDC00 && ch2 <= 0xDFFF && size) {
                     ucs = (((ch & 0x03FF) << 10) | (ch2 & 0x03FF)) + 0x00010000;
                     *p++ = '\\';
                     *p++ = 'U';