diff options
| author | Johan Dahlin <johan@gnome.org> | 2008-01-19 15:29:42 +0000 |
|---|---|---|
| committer | Johan Dahlin <johan@src.gnome.org> | 2008-01-19 15:29:42 +0000 |
| commit | 79bce1671d93093f8bbe26ef09f0a556d7d6e9ff (patch) | |
| tree | 94364846b31ddc05c81465dde01db9b3411c25e1 | |
| parent | 9cb228de2a54ca3f0cffa8dad9a98d1219531f70 (diff) | |
| download | pygobject-79bce1671d93093f8bbe26ef09f0a556d7d6e9ff.tar.gz pygobject-79bce1671d93093f8bbe26ef09f0a556d7d6e9ff.tar.xz pygobject-79bce1671d93093f8bbe26ef09f0a556d7d6e9ff.zip | |
Fix a silly bug so it possible to read files larger than 8192 bytes.
2008-01-19 Johan Dahlin <johan@gnome.org>
* gio/gio.override: Fix a silly bug so it possible to read files
larger than 8192 bytes.
svn path=/trunk/; revision=734
| -rw-r--r-- | ChangeLog | 3 | ||||
| -rw-r--r-- | gio/gio.override | 10 |
2 files changed, 9 insertions, 4 deletions
@@ -1,5 +1,8 @@ 2008-01-19 Johan Dahlin <johan@gnome.org> + * gio/gio.override: Fix a silly bug so it possible to read files + larger than 8192 bytes. + * gio/gio.defs: Set null-ok for all cancelable as well. * gio/__init__.py: set gio.unix to None if it's not available diff --git a/gio/gio.override b/gio/gio.override index 6cb6e5d..88b313a 100644 --- a/gio/gio.override +++ b/gio/gio.override @@ -5,6 +5,8 @@ headers #include <pygobject.h> #include <gio/gio.h> +#DEFINE BUFSIZE + %% modulename gio %% @@ -86,21 +88,20 @@ _wrap_g_input_stream_read(PyGObject *self, PyObject *args, PyObject *kwargs) PyObject *v; GCancellable *cancellable; - gsize count = -1; + long count = -1; GError *error = NULL; size_t bytesread, buffersize, chunksize; if (!PyArg_ParseTupleAndKeywords(args, kwargs, - "|iO!:GInputStream.skip", + "|iO!:InputStream.read", kwlist, &count, &PyGCancellable_Type, &pycancellable)) return NULL; - buffersize = 8192; + buffersize = BUFSIZE; cancellable = pycancellable ? G_CANCELLABLE(pycancellable->obj) : NULL; - v = PyString_FromStringAndSize((char *)NULL, buffersize); if (v == NULL) return NULL; @@ -134,6 +135,7 @@ _wrap_g_input_stream_read(PyGObject *self, PyObject *args, PyObject *kwargs) if (count < 0) { + buffersize += BUFSIZE; if (_PyString_Resize(&v, buffersize) < 0) return NULL; } |
