PR-URL: #1553
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
static void WriteBuffer(const FunctionCallbackInfo<Value>& args) {
Environment* env = Environment::GetCurrent(args);
- CHECK(args[0]->IsInt32());
+ if (!args[0]->IsInt32())
+ return env->ThrowTypeError("First argument must be file descriptor");
+
CHECK(Buffer::HasInstance(args[1]));
int fd = args[0]->Int32Value();
--- /dev/null
+const common = require('../common');
+const fs = require('fs');
+const assert = require('assert');
+
+assert.throws(function() {
+ fs.write(null, new Buffer(1), 0, 1);
+}, /TypeError/);
+
+assert.throws(function() {
+ fs.write(null, '1', 0, 1);
+}, /TypeError/);