Browse Source

Prep for async toBuffer()

v1.x
Tj Holowaychuk 15 years ago
parent
commit
9a1484de3c
  1. 11
      src/Canvas.cc

11
src/Canvas.cc

@ -18,6 +18,7 @@ using namespace node;
*/ */
typedef struct { typedef struct {
Persistent<Function> pfn;
Handle<Function> fn; Handle<Function> fn;
unsigned len; unsigned len;
uint8_t *data; uint8_t *data;
@ -128,12 +129,16 @@ toBuffer(void *c, const uint8_t *data, unsigned len) {
Handle<Value> Handle<Value>
Canvas::ToBuffer(const Arguments &args) { Canvas::ToBuffer(const Arguments &args) {
HandleScope scope; HandleScope scope;
Canvas *canvas = ObjectWrap::Unwrap<Canvas>(args.This());
// Async // Async
if (args[0]->IsFunction()) { if (args[0]->IsFunction()) {
closure_t *closure = new closure_t;
closure->len = 0;
// TODO: only one callback fn in closure
closure->fn = Persistent<Function>::New(Handle<Function>::Cast(args[0]));
return Undefined();
} else { } else {
Canvas *canvas = ObjectWrap::Unwrap<Canvas>(args.This());
closure_t closure; closure_t closure;
closure.len = 0; closure.len = 0;
@ -150,8 +155,6 @@ Canvas::ToBuffer(const Arguments &args) {
return buf->handle_; return buf->handle_;
} }
} }
return Undefined();
} }
/* /*

Loading…
Cancel
Save