Bugfix: Negative ints in HTTP's on_body and node.fs.read()

Similar to the error fixed in
9d3ed1bb92.

Reported by Felix Geisendörfer.
v0.7.4-release
Ryan 2009-08-09 18:10:16 +02:00
parent 75fc21537a
commit ed8c43d2f3
2 changed files with 3 additions and 2 deletions

View File

@ -285,7 +285,8 @@ AfterRawRead(eio_req *req)
size_t len = req->result;
Local<Array> array = Array::New(len);
for (unsigned int i = 0; i < len; i++) {
array->Set(Integer::New(i), Integer::New(buf[i]));
unsigned char val = reinterpret_cast<const unsigned char*>(buf)[i];
array->Set(Integer::New(i), Integer::New(val));
}
argv[0] = array;
argv[1] = Integer::New(req->result);

View File

@ -196,7 +196,7 @@ HTTPConnection::on_body (http_parser *parser, const char *buf, size_t len)
// raw encoding
Local<Array> array = Array::New(len);
for (size_t i = 0; i < len; i++) {
char val = static_cast<const char*>(buf)[i];
unsigned char val = reinterpret_cast<const unsigned char*>(buf)[i];
array->Set(Integer::New(i), Integer::New(val));
}
argv[0] = array;