summaryrefslogtreecommitdiffstats
path: root/Modules/cStringIO.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove UNLESS.Martin v. Löwis2006-03-011-29/+28
|
* Silence gcc (4.0.x) warning about use of uninitialized value.Thomas Wouters2006-03-011-1/+1
|
* Use Py_ssize_t for counts and sizes.Martin v. Löwis2006-02-161-3/+3
|
* Merge ssize_t branch.Martin v. Löwis2006-02-151-24/+31
|
* Check return result from Py_InitModule*(). This API can fail.Neal Norwitz2006-01-191-0/+1
| | | | Probably should be backported.
* Add const to several API functions that take char *.Jeremy Hylton2005-12-101-1/+1
| | | | | | | | | | | | | | | | | | | In C++, it's an error to pass a string literal to a char* function without a const_cast(). Rather than require every C++ extension module to put a cast around string literals, fix the API to state the const-ness. I focused on parts of the API where people usually pass literals: PyArg_ParseTuple() and friends, Py_BuildValue(), PyMethodDef, the type slots, etc. Predictably, there were a large set of functions that needed to be fixed as a result of these changes. The most pervasive change was to make the keyword args list passed to PyArg_ParseTupleAndKewords() to be a const char *kwlist[]. One cast was required as a result of the changes: A type object mallocs the memory for its tp_doc slot and later frees it. PyTypeObject says that tp_doc is const char *; but if the type was created by type_new(), we know it is safe to cast to char *.
* Patches #1298449 and #1298499: Add some missing checks for errorMichael W. Hudson2005-09-221-7/+15
| | | | | | returns in cStringIO.c. Thanks to Andrew Bennetts. This must be a backport candidate.
* Patch 1012740: cStringIO's truncate doesn'tTim Peters2004-08-211-0/+1
| | | | | | | | | | | | | truncate() left the stream position unchanged, which meant the "truncated" data didn't go away: >>> io.write('abc') >>> io.truncate(0) >>> io.write('xyz') >>> io.getvalue() 'abcxyz' Patch by Dima Dorfman.
* sizeof(char) is 1, by definition, so get rid of that expression inTim Peters2004-06-271-5/+4
| | | | places it's just noise.
* SF patch #907403: Improvements to cStringIO.writelines()Raymond Hettinger2004-03-081-28/+23
| | | | | | | The writelines() method now accepts any iterable argument and writes the lines one at a time rather than using ''.join(lines) followed by a single write. Results in considerable memory savings and makes the method suitable for use with generator expressions.
* Speed-up the joiner call by avoiding Py_BuildValue().Raymond Hettinger2004-02-271-1/+5
|
* Simplify and speedup uses of Py_BuildValue():Raymond Hettinger2003-10-121-1/+1
| | | | | | * Py_BuildValue("(OOO)",a,b,c) --> PyTuple_Pack(3,a,b,c) * Py_BuildValue("()",a) --> PyTuple_New(0) * Py_BuildValue("O", a) --> Py_INCREF(a)
* reverting to 2.41 version (distinct tp_names) - will add verbiage to theSkip Montanaro2003-08-111-2/+2
| | | | docs
* shit - just change the visible name, not the comments - strictly speaking,Skip Montanaro2003-08-111-3/+3
| | | | | the tp_name is not correct, but what's exposed to users is known visibly as "StringIO", not "StringI" or "StringO".
* typosSkip Montanaro2003-08-111-3/+3
|
* SF bug #770485: cStringIO does not set closed attrRaymond Hettinger2003-08-081-2/+22
|
* SF patch 695710: fix bug 678519: cStringIO self iteratorRaymond Hettinger2003-04-241-65/+56
| | | | (requested by GvR. patch contributed by Michael Stone)
* SF patch 660559: Use METH_O and METH_NOARGS where possibleRaymond Hettinger2003-01-031-33/+19
| | | | | Simplify code and speed access by using PyArg_UnpackTuple, METH_O and METH_NOARGS in three modules that can benefit from it.
* SF bug 601775 - some int results that should be bool.Guido van Rossum2002-09-011-1/+2
|
* Excise DL_EXPORT/DL_IMPORT from Modules/*. Required adding a prototypeMark Hammond2002-08-021-3/+3
| | | | | | for Py_Main(). Thanks to Kalle Svensson and Skip Montanaro for the patches.
* Patch #568124: Add doc string macros.Martin v. Löwis2002-06-131-48/+35
|
* See discussion at SF bug 547537.Guido van Rossum2002-04-291-1/+1
| | | | | | | | | | | Unicode objects are currently taken as binary data by the write() method. This is not what Unicode users expect, nor what the StringIO.py code does. Until somebody adds a way to specify binary or text mode for cStringIO objects, change the format string to use "t#" instead of "s#", so that it will request the "text buffer" version. This will try the default encoding for Unicode objects. This is *not* a 2.2 bugfix (since it *is* a semantic change).
* Removed old Digital Creations copyright/license notices (withGuido van Rossum2002-04-041-53/+0
| | | | | permission from Paul Everitt). Also removed a few other references to Digital Creations and changed the remaining ones to Zope Corporation.
* Fix SF bug #526518Jeremy Hylton2002-03-081-1/+1
| | | | | | | | The doc string for cStringIO suggested that str() of a StringIO object was equivalent to getvalue(). This was never true, so repair the doc string. (doctest would have helped here.) Bug fix candidate for any past versions.
* Patch supplied by Burton Radons for his own SF bug #487390: ModifyingGuido van Rossum2001-12-081-2/+2
| | | | | | | | | | | | | type.__module__ behavior. This adds the module name and a dot in front of the type name in every type object initializer, except for built-in types (and those that already had this). Note that it touches lots of Mac modules -- I have no way to test these but the changes look right. Apologies if they're not. This also touches the weakref docs, which contains a sample type object initializer. It also touches the mmap test output, because the mmap type's repr is included in that output. It touches object.h to put the correct description in a comment.
* O_cwrite(): rewrote for clarity, replacing all the (Oobject *)selfGuido van Rossum2001-12-071-16/+17
| | | | | | | | | | | casts with a variable oself that has the proper type. A smart compiler may put this thing into a register. (I'm not sure what good this does except satisfy my desire to understand this function; I got a report about an uninitialized read from Insure++ about this function and it hurt my eyes to even look at it. I gotta run away or I'll get tempted to reformat the entire file...)
* StringIO patch #462596: let's [c]StringIO accept read buffers onMarc-André Lemburg2001-09-241-9/+5
| | | | input to .write() too.
* I_getiter(): Function for the tp_iter slot of Itype so thatBarry Warsaw2001-09-221-20/+45
| | | | | | cStringIO's can participate in the iterator protocol. Fill the Itype.tp_iter slot with I_getiter()
* In O_writelines: Replace use of string.joinfields with "".join.Jeremy Hylton2001-02-091-8/+11
|
* Added a new "base" type, IOobject for which most of theJim Fulton2000-10-061-285/+355
| | | | | | | | | | | | | | | operations are defined. This will, hopefully clarify some of the logic. Added close test to raise proper error when operations are performed on closed StringIOs. Added a position argument to the truncate method. Added a size argument to readline. Added PyArg_Parse calls for methods that don't take arguments to make sure they don't take arguments.
* Implement readlines function. Closes Bug #110686.Martin v. Löwis2000-09-191-0/+36
|
* Use METH_VARARGS instead of numeric constant 1 in method def. tablesAndrew M. Kuchling2000-08-031-1/+2
|
* ANSIfy some more forward declarations.Thomas Wouters2000-07-241-1/+1
|
* Spelling fixes supplied by Rob W. W. Hooft. All these are fixes in eitherThomas Wouters2000-07-161-1/+1
| | | | | | | | | | comments, docstrings or error messages. I fixed two minor things in test_winreg.py ("didn't" -> "Didn't" and "Didnt" -> "Didn't"). There is a minor style issue involved: Guido seems to have preferred English grammar (behaviour, honour) in a couple places. This patch changes that to American, which is the more prominent style in the source. I prefer English myself, so if English is preferred, I'd be happy to supply a patch myself ;)
* replace PyXXX_Length calls with PyXXX_Size callsJeremy Hylton2000-07-121-1/+1
|
* Fixed docstring typo, reported by Skip Montanaro <skip@mojam.com>.Fred Drake2000-06-191-1/+1
|
* Vladimir Marangozov's long-awaited malloc restructuring.Guido van Rossum2000-05-031-5/+5
| | | | | | | | | | For more comments, read the patches@python.org archives. For documentation read the comments in mymalloc.h and objimpl.h. (This is not exactly what Vladimir posted to the patches list; I've made a few changes, and Vladimir sent me a fix in private email for a problem that only occurs in debug mode. I'm also holding back on his change to main.c, which seems unnecessary to me.)
* raise TypeError when bad argument passed to cStringIO.StringIOJeremy Hylton2000-04-121-4/+10
|
* Massive patch by Skip Montanaro to add ":name" to as manyGuido van Rossum2000-02-291-7/+7
| | | | PyArg_ParseTuple() format string arguments as possible.
* New version from Jim: don't call Py_FatalError() when initialization fails.Guido van Rossum1999-06-151-5/+2
|
* The writelines() function was never tested and contained numerous bugsGuido van Rossum1999-02-081-4/+16
| | | | | | (including a docstring saying "blah"). Fixed all this. (Please review for potential memory leaks!)
* Jim Fulton writes:Guido van Rossum1998-12-151-42/+73
| | | | | This fixes a bug that can cause core dumps when doing seeks in input StringIO objects. This has a number of other clean-ups.
* Add DL_EXPORT() to all modules that could possibly be usedGuido van Rossum1998-12-041-1/+1
| | | | on BeOS or Windows.
* New version from Jim Fulton:Guido van Rossum1998-11-251-71/+69
| | | | | | | - New copyright. (Open source) - Fixed problem in seek method. The seek method should (and now does) fill with nulls when seeking past the end of the "file".
* Use 'S' format character for the optional constructor argument, so weGuido van Rossum1998-07-241-1/+1
| | | | | get a decent error message when it's not a string (instead of confusing errors when trying to use the thing).
* I_getattr(),Fred Drake1998-07-171-1/+7
| | | | | O_getattr(): Added read-only access to the closed attribute, based on comment from Michael Scharf <Michael.Scharf@Rhein-Neckar.de>.
* Module docstring indicated seek() isn't implemented, but it is.Fred Drake1998-04-111-1/+1
|
* New versions of cPickle and cStringIO, from Jim Fulton's cPickle 1.0b1Guido van Rossum1997-12-041-99/+15
| | | | distribution.
* #Plug small memory leaks in constructors.Guido van Rossum1997-09-031-2/+7
|
* Fix the bug Jeremy was experiencing: both the close() and theGuido van Rossum1997-09-031-4/+19
| | | | | | | | | | | dealloc() functions contained code to free/DECREF the buffer (there were differences between I and O objects but the logic bug was the same). Fixed this be setting the buffer pointer to NULL and testing for that. (This also makes it safe to call close() more than once.) XXX Worry: what if you try to read() or write() once the thing is closed?