Benjamin Peterson 
								
							 
						 
						
							
							
							
							
								
							
							
								ccc51c1fc6 
								
							 
						 
						
							
							
								
								fix compiler warnings  
							
							
							
						 
						
							2011-10-03 19:34:12 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								b092365cc6 
								
							 
						 
						
							
							
								
								Move in-place Unicode append to its own subfunction  
							
							
							
						 
						
							2011-10-04 01:17:31 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								a5f9163501 
								
							 
						 
						
							
							
								
								Reindent internal Unicode macros  
							
							
							
						 
						
							2011-10-04 01:07:11 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								a41463c203 
								
							 
						 
						
							
							
								
								Document utf8_length and wstr_length states  
							
							... 
							
							
							
							Ensure these states with assertions in _PyUnicode_CheckConsistency(). 
							
						 
						
							2011-10-04 01:05:08 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								9566311014 
								
							 
						 
						
							
							
								
								resize_inplace() sets utf8_length to zero if the utf8 is not shared8  
							
							... 
							
							
							
							Cleanup also the code. 
							
						 
						
							2011-10-04 01:03:50 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								9e9d689d85 
								
							 
						 
						
							
							
								
								PyUnicode_New() sets utf8_length to zero for latin1  
							
							
							
						 
						
							2011-10-04 01:02:02 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								016980454e 
								
							 
						 
						
							
							
								
								Unicode: raise SystemError instead of ValueError or RuntimeError on invalid  
							
							... 
							
							
							
							state 
							
						 
						
							2011-10-04 00:04:26 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								7f11ad4594 
								
							 
						 
						
							
							
								
								Unicode: document when the wstr pointer is shared with data  
							
							... 
							
							
							
							Add also related assertions to _PyUnicode_CheckConsistency(). 
							
						 
						
							2011-10-04 00:00:20 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								03490918b7 
								
							 
						 
						
							
							
								
								Add _PyUnicode_HAS_WSTR_MEMORY() macro  
							
							
							
						 
						
							2011-10-03 23:45:12 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								9ce5a835bb 
								
							 
						 
						
							
							
								
								PyUnicode_Join() checks output length in debug mode  
							
							... 
							
							
							
							PyUnicode_CopyCharacters() may copies less character than requested size, if
the input string is smaller than the argument. (This is very unlikely, but who
knows!?)
Avoid also calling PyUnicode_CopyCharacters() if the string is empty. 
							
						 
						
							2011-10-03 23:36:02 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								b803895355 
								
							 
						 
						
							
							
								
								Fix a compiler warning in PyUnicode_Append()  
							
							... 
							
							
							
							Don't check PyUnicode_CopyCharacters() in release mode. Rename also some
variables. 
							
						 
						
							2011-10-03 23:27:56 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								8cfcbed4e3 
								
							 
						 
						
							
							
								
								Improve string forms and PyUnicode_Resize() documentation  
							
							... 
							
							
							
							Remove also the FIXME for resize_copy(): as discussed with Martin, copy the
string on resize if the string is not resizable is just fine. 
							
						 
						
							2011-10-03 23:19:21 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								77bb47b312 
								
							 
						 
						
							
							
								
								Simplify unicode_resizable(): singletons reference count is at least 2  
							
							
							
						 
						
							2011-10-03 20:06:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								85041a54bd 
								
							 
						 
						
							
							
								
								_PyUnicode_CheckConsistency() checks utf8 field consistency  
							
							
							
						 
						
							2011-10-03 14:42:39 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								3cf4637e4e 
								
							 
						 
						
							
							
								
								unicode_subtype_new() copies also the ascii flag  
							
							
							
						 
						
							2011-10-03 14:42:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								42dfd71333 
								
							 
						 
						
							
							
								
								unicode_kind_name() doesn't check consistency anymore  
							
							... 
							
							
							
							It is is called from _PyUnicode_Dump() and so must not fail. 
							
						 
						
							2011-10-03 14:41:45 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								a3b334da6d 
								
							 
						 
						
							
							
								
								PyUnicode_Ready() now sets ascii=1 if maxchar < 128  
							
							... 
							
							
							
							ascii=1 is no more reserved to PyASCIIObject. Use
PyUnicode_IS_COMPACT_ASCII(obj) to check if obj is a PyASCIIObject (as before). 
							
						 
						
							2011-10-03 13:53:37 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								1b4f9ceca7 
								
							 
						 
						
							
							
								
								Create _PyUnicode_READY_REPLACE() to reuse singleton  
							
							... 
							
							
							
							Only use _PyUnicode_READY_REPLACE() on just created strings. 
							
						 
						
							2011-10-03 13:28:14 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								c379ead9af 
								
							 
						 
						
							
							
								
								Fix resize_compact() and resize_inplace(); reenable full resize optimizations  
							
							... 
							
							
							
							* resize_compact() updates also wstr_len for non-ascii strings sharing wstr
 * resize_inplace() updates also utf8_len/wstr_len for strings sharing
   utf8/wstr 
							
						 
						
							2011-10-03 12:52:27 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								34411e17b0 
								
							 
						 
						
							
							
								
								resize_inplace() has been fixed: reenable this optimization  
							
							
							
						 
						
							2011-10-03 12:21:33 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								a849a4b6b4 
								
							 
						 
						
							
							
								
								_PyUnicode_Dump() indicates if wstr and/or utf8 are shared  
							
							
							
						 
						
							2011-10-03 12:12:11 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								1c8d0c76a1 
								
							 
						 
						
							
							
								
								Fix resize_inplace(): update shared utf8 pointer  
							
							
							
						 
						
							2011-10-03 12:11:00 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								ca4f7a4298 
								
							 
						 
						
							
							
								
								Disable unicode_resize() optimization on Windows (16-bit wchar_t)  
							
							
							
						 
						
							2011-10-03 04:18:04 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								126c559d05 
								
							 
						 
						
							
							
								
								_PyUnicode_Ready() for 16-bit wchar_t  
							
							
							
						 
						
							2011-10-03 04:17:10 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								2fd82278cb 
								
							 
						 
						
							
							
								
								Fix compilation error on Windows  
							
							... 
							
							
							
							Fix also a compiler warning. 
							
						 
						
							2011-10-03 04:06:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								a3be613a56 
								
							 
						 
						
							
							
								
								Use PyUnicode_WCHAR_KIND to check if a string is a wstr string  
							
							... 
							
							
							
							Simplify the test in wstr pointer in unicode_sizeof(). 
							
						 
						
							2011-10-03 02:16:37 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								910337b42e 
								
							 
						 
						
							
							
								
								Add _PyUnicode_CheckConsistency() macro to help debugging  
							
							... 
							
							
							
							* Document Unicode string states
 * Use _PyUnicode_CheckConsistency() to ensure that objects are always
   consistent. 
							
						 
						
							2011-10-03 03:20:16 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								4fae54cb0e 
								
							 
						 
						
							
							
								
								In release mode, PyUnicode_InternInPlace() does nothing if the input is NULL or  
							
							... 
							
							
							
							not a unicode, instead of failing with a fatal error.
Use assertions in debug mode (provide better error messages). 
							
						 
						
							2011-10-03 02:01:52 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								23e5668214 
								
							 
						 
						
							
							
								
								PyUnicode_Append() now works in-place when it's possible  
							
							
							
						 
						
							2011-10-03 03:54:37 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								fe226c0d37 
								
							 
						 
						
							
							
								
								Rewrite PyUnicode_Resize()  
							
							... 
							
							
							
							* Rename _PyUnicode_Resize() to unicode_resize()
 * unicode_resize() creates a copy if the string cannot be resized instead
   of failing
 * Optimize resize_copy() for wstr strings
 * Disable temporary resize_inplace() 
							
						 
						
							2011-10-03 03:52:20 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								829c0adca9 
								
							 
						 
						
							
							
								
								Add _PyUnicode_HAS_UTF8_MEMORY() macro  
							
							
							
						 
						
							2011-10-03 01:08:02 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								fe0c155c4f 
								
							 
						 
						
							
							
								
								Write _PyUnicode_Dump() to help debugging  
							
							
							
						 
						
							2011-10-03 02:59:31 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								f42dc448e0 
								
							 
						 
						
							
							
								
								PyUnicode_CopyCharacters() fails when copying latin1 into ascii  
							
							
							
						 
						
							2011-10-02 23:33:16 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								c53be96c54 
								
							 
						 
						
							
							
								
								unicode_convert_wchar_to_ucs4() cannot fail  
							
							
							
						 
						
							2011-10-02 21:33:54 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								c3c7415639 
								
							 
						 
						
							
							
								
								Add _PyUnicode_DATA_ANY(op) private macro  
							
							
							
						 
						
							2011-10-02 20:39:55 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								a464fc141d 
								
							 
						 
						
							
							
								
								unicode_empty and unicode_latin1 are PyObject* objects, not PyUnicodeObject*  
							
							
							
						 
						
							2011-10-02 20:39:30 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								267aa24365 
								
							 
						 
						
							
							
								
								PyUnicode_FindChar() raises a IndexError on invalid index  
							
							
							
						 
						
							2011-10-02 01:08:37 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								bc603d12b7 
								
							 
						 
						
							
							
								
								Optimize _PyUnicode_AsKind() for UCS1->UCS4 and UCS2->UCS4  
							
							... 
							
							
							
							* Ensure that the input string is ready
 * Raise a ValueError instead of of a fatal error 
							
						 
						
							2011-10-02 01:00:40 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								5a706cf8c0 
								
							 
						 
						
							
							
								
								Fix usage of PyUnicode_READY() in PyUnicode_GetLength()  
							
							
							
						 
						
							2011-10-02 00:36:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								cd9950fd09 
								
							 
						 
						
							
							
								
								PyUnicode_WriteChar() raises IndexError on invalid index  
							
							... 
							
							
							
							PyUnicode_WriteChar() raises also a ValueError if the string has more than 1
reference. 
							
						 
						
							2011-10-02 00:34:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								2fe5ced752 
								
							 
						 
						
							
							
								
								PyUnicode_ReadChar() raises a IndexError if the index in invalid  
							
							... 
							
							
							
							unicode_getitem() reuses PyUnicode_ReadChar() 
							
						 
						
							2011-10-02 00:25:40 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								202b62bd90 
								
							 
						 
						
							
							
								
								PyUnicode_FromKindAndData() raises a ValueError if the kind is unknown  
							
							
							
						 
						
							2011-10-01 23:48:37 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								07ac3ebd7b 
								
							 
						 
						
							
							
								
								Optimize unicode_subtype_new(): don't encode to wchar_t and decode from wchar_t  
							
							... 
							
							
							
							Rewrite unicode_subtype_new(): allocate directly the right type. 
							
						 
						
							2011-10-01 16:16:43 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								e90fe6a8f4 
								
							 
						 
						
							
							
								
								Add _PyUnicode_UTF8() and _PyUnicode_UTF8_LENGTH() macros  
							
							... 
							
							
							
							* Rename existing _PyUnicode_UTF8() macro to PyUnicode_UTF8()
 * Rename existing _PyUnicode_UTF8_LENGTH() macro to PyUnicode_UTF8_LENGTH()
 * PyUnicode_UTF8() and PyUnicode_UTF8_LENGTH() are more strict 
							
						 
						
							2011-10-01 16:48:13 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Martin v. Löwis 
								
							 
						 
						
							
							
							
							
								
							
							
								0b1d348990 
								
							 
						 
						
							
							
								
								Issue 13085: Fix some memory leaks. Patch by Stefan Krah.  
							
							
							
						 
						
							2011-10-01 16:35:40 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Benjamin Peterson 
								
							 
						 
						
							
							
							
							
								
							
							
								5c0fb00ad8 
								
							 
						 
						
							
							
								
								merge heads  
							
							
							
						 
						
							2011-10-01 00:12:20 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Benjamin Peterson 
								
							 
						 
						
							
							
							
							
								
							
							
								31616ea2ff 
								
							 
						 
						
							
							
								
								remove reference to non-existent file  
							
							
							
						 
						
							2011-10-01 00:11:09 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								de636f3c34 
								
							 
						 
						
							
							
								
								PyUnicode_Substring() now accepts end bigger than string length  
							
							... 
							
							
							
							Fix also a bug: call PyUnicode_READY() before reading string length. 
							
						 
						
							2011-10-01 03:55:54 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								c759f3e7ec 
								
							 
						 
						
							
							
								
								Ooops, avoid a division by zero in unicode_repeat()  
							
							
							
						 
						
							2011-10-01 03:09:58 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								d3a83d5eb3 
								
							 
						 
						
							
							
								
								PyUnicode_FromObject() ensures that its output is a ready string  
							
							
							
						 
						
							2011-10-01 03:09:33 +02:00