Skip to content
This repository was archived by the owner on Jul 20, 2025. It is now read-only.

Commit f8996f2

Browse files
author
Stephen Schiffli
committed
Update DFU for context pointers
1 parent f75fcc2 commit f8996f2

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

lib/metawear.js

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -318,11 +318,12 @@ MetaWear.prototype.updateFirmwareWithUrl = function (url, callback) {
318318
}.bind(this));
319319

320320
var delegate = new MetaWear.DfuDelegate();
321-
delegate.on_dfu_started = MetaWear.FnVoid.toPointer(onDfuStarted.bind(this));
322-
delegate.on_dfu_cancelled = MetaWear.FnVoid.toPointer(onDfuCancelled.bind(this));
323-
delegate.on_transfer_percentage = MetaWear.FnVoid_Int.toPointer(onTransferPercentage.bind(this));
324-
delegate.on_successful_file_transferred = MetaWear.FnVoid.toPointer(onSuccessfulFileTransfer.bind(this));
325-
delegate.on_error = MetaWear.FnVoid_charP.toPointer(onError.bind(this));
321+
delegate.context = ref.NULL;
322+
delegate.on_dfu_started = MetaWear.FnVoid_VoidP.toPointer(onDfuStarted.bind(this));
323+
delegate.on_dfu_cancelled = MetaWear.FnVoid_VoidP.toPointer(onDfuCancelled.bind(this));
324+
delegate.on_transfer_percentage = MetaWear.FnVoid_VoidP_Int.toPointer(onTransferPercentage.bind(this));
325+
delegate.on_successful_file_transferred = MetaWear.FnVoid_VoidP.toPointer(onSuccessfulFileTransfer.bind(this));
326+
delegate.on_error = MetaWear.FnVoid_VoidP_charP.toPointer(onError.bind(this));
326327
MetaWear.mbl_mw_metawearboard_perform_dfu(this.board, delegate.ref(), ref.allocCString(filename));
327328
}
328329
}.bind(this));
@@ -392,23 +393,23 @@ function invokeAndClearCallback(error) {
392393
//
393394
// DFU Delegate
394395
//
395-
function onDfuStarted() {
396+
function onDfuStarted(context) {
396397
this.emit('dfuStarted');
397398
debug('onDfuStarted');
398399
}
399-
function onDfuCancelled() {
400+
function onDfuCancelled(context) {
400401
debug('onDfuCancelled');
401402
}
402-
function onTransferPercentage(percentage) {
403+
function onTransferPercentage(context, percentage) {
403404
debug('transferPercentage ' + percentage);
404405
this.percentage = percentage;
405406
this.emit('transferPercentage', percentage);
406407
}
407-
function onSuccessfulFileTransfer() {
408+
function onSuccessfulFileTransfer(context) {
408409
debug('onSuccessfulFileTransfer');
409410
this.emit('onSuccessfulFileTransfer');
410411
}
411-
function onError(message) {
412+
function onError(context, message) {
412413
debug('dfu error: ' + message);
413414
invokeAndClearCallback.call(this, new Error(message));
414415
}

0 commit comments

Comments
 (0)