Comments (4)
Changing Decoder_readPyString in context.c to:
static PyObject* Decoder_readPyString(DecoderObj *self, int len)
{
if (self->int_buf) {
return Buffer_readPyString((BufferObj*)self->buf, len);
}
PyObject *tmp = self->_buf_str;
PyObject *py_len = PyInt_FromLong((long)len);
if (!py_len)
return NULL;
self->_buf_str = PyObject_CallMethodObjArgs(self->buf, self->read_name, py_len, NULL);
int buf_len = PyString_Size(self->_buf_str);
if (buf_len < len){
char error_str[100];
sprintf(error_str, "Attempted to read %d bytes. Received %d", len, buf_len);
PyErr_SetString(amfast_ContextError, error_str);
return NULL;
}
char *buf_str = PyString_AsString(self->_buf_str);
Py_DECREF(py_len);
Py_XDECREF(tmp); // Decrement reference to OLD string.
return self->_buf_str;
}
May fix the issue. I'm not familiar enough with the code to know about any
side-effects this may cause.
Original comment by [email protected]
on 19 Apr 2012 at 11:05
from amfast.
thanks for the code submission.
What is the purpose of the following line?
char *buf_str = PyString_AsString(self->_buf_str);
Original comment by [email protected]
on 21 Apr 2012 at 3:55
from amfast.
Hi,
That line is probably an error, I'm not the most proficient c coder
Original comment by [email protected]
on 21 Apr 2012 at 4:56
from amfast.
I made a couple of changes to your code and pushed the change to trunk.
Original comment by [email protected]
on 22 Apr 2012 at 9:54
- Changed state: Fixed
from amfast.
Related Issues (20)
- Problem with the cherrypy echo example HOT 3
- Django specific ClassDef HOT 2
- the examples/links are broken HOT 3
- Trying to get callbacks from tornado to write async messages to Flex HOT 5
- Addressbook example produces error with sqlalchemy 7b1 HOT 1
- memory leak again HOT 3
- Integrate django streaming channel code HOT 2
- DjangoStreamingChannel has a problem. HOT 7
- The encoder doesn't like objects without a __dict__ attribute HOT 5
- Customize amfast.context.Ref behavior HOT 3
- Build fails with python 2.4 HOT 2
- solved KeyError in memcache_manager.py HOT 3
- Message.convertFail doesn't set the target HOT 1
- I plan to overwrite threadpool.py using coroutine instead of original thread.
- Long-polling not works with multiple http server HOT 4
- Empty string is a legitimate dict key, but amfast ignores it HOT 1
- 'forensic' functionality
- Installation error
- Installation issue
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from amfast.