TBR: Return stream errors to the caller.
Change-Id: I05332404e829c9c6aa603c67597d4754ccf4d1c0
diff --git a/src/util.js b/src/util.js
index b17e96d..815738c 100644
--- a/src/util.js
+++ b/src/util.js
@@ -74,11 +74,17 @@
var globPattern = vanadium.naming.join(parentFullName, '*');
+ var streamErr = null;
+
var stream = namespace.glob(ctx, globPattern, function(err) {
if (err) {
return cb(err);
}
+ if (streamErr) {
+ return cb(streamErr);
+ }
+
cb(null, childNames);
}).stream;
@@ -90,6 +96,8 @@
stream.on('error', function(err) {
console.error('Stream error: ' + JSON.stringify(err));
+ // Store the first stream error in streamErr.
+ streamErr = streamErr || err.error;
});
}