File tree Expand file tree Collapse file tree 3 files changed +40
-6
lines changed
test/integration/gh-issues Expand file tree Collapse file tree 3 files changed +40
-6
lines changed Original file line number Diff line number Diff line change 33 - " 0.10"
44before_script :
55 - node script/create-test-tables.js pg://postgres@127.0.0.1:5432/postgres
6+ env :
7+ - PGUSER=postgres PGDATABASE=postgres
Original file line number Diff line number Diff line change @@ -876,13 +876,17 @@ class Connection : public ObjectWrap {
876876 } else if (val->IsNull ()) {
877877 paramValues[i] = NULL ;
878878 } else if (val->IsObject () && Buffer::HasInstance (val)) {
879- char *cHexString = MallocCHexString (val->ToObject ());
880- if (!cHexString) {
881- LOG (" ArgToCStringArray: OUT OF MEMORY OR SOMETHING BAD!" );
882- ReleaseCStringArray (paramValues, i-1 );
883- return 0 ;
879+ if (Buffer::Length (val) > 0 ) {
880+ char *cHexString = MallocCHexString (val->ToObject ());
881+ if (!cHexString) {
882+ LOG (" ArgToCStringArray: OUT OF MEMORY OR SOMETHING BAD!" );
883+ ReleaseCStringArray (paramValues, i-1 );
884+ return 0 ;
885+ }
886+ paramValues[i] = cHexString;
887+ } else {
888+ paramValues[i] = MallocCString (NanNew<String>(" " ));
884889 }
885- paramValues[i] = cHexString;
886890 } else {
887891 // a paramter was not a string
888892 LOG (" Parameter not a string or buffer" );
Original file line number Diff line number Diff line change 1+ var helper = require ( '../test-helper' ) ;
2+ var assert = require ( 'assert' ) ;
3+
4+ helper . pg . connect ( function ( err , client , done ) {
5+ if ( err ) throw err ;
6+
7+ var c = 'CREATE TEMP TABLE posts (body TEXT)' ;
8+
9+ client . query ( c , function ( err ) {
10+ if ( err ) throw err ;
11+
12+ c = 'INSERT INTO posts (body) VALUES ($1) RETURNING *' ;
13+
14+ var body = new Buffer ( 'foo' ) ;
15+ client . query ( c , [ body ] , function ( err ) {
16+ if ( err ) throw err ;
17+
18+ body = new Buffer ( [ ] ) ;
19+ client . query ( c , [ body ] , function ( err , res ) {
20+ done ( ) ;
21+
22+ if ( err ) throw err ;
23+ assert . equal ( res . rows [ 0 ] . body , '' )
24+ helper . pg . end ( ) ;
25+ } ) ;
26+ } ) ;
27+ } ) ;
28+ } ) ;
You can’t perform that action at this time.
0 commit comments