Socket
Socket
Sign inDemoInstall

serialport

Package Overview
Dependencies
Maintainers
1
Versions
175
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

serialport - npm Package Compare versions

Comparing version 1.4.0 to 1.4.1

sandbox/disconnect.js

2

package.json
{
"name": "serialport",
"version": "1.4.0",
"version": "1.4.1",
"description": "Welcome your robotic javascript overlords. Better yet, program them!",

@@ -5,0 +5,0 @@ "author": {

@@ -6,3 +6,3 @@ /*jslint node: true */

var parsers = module.exports = {
module.exports = {
raw: function (emitter, buffer) {

@@ -24,3 +24,3 @@ emitter.emit("data", buffer);

data = parts.pop();
parts.forEach(function (part, i, array) {
parts.forEach(function (part) {
emitter.emit('data', part);

@@ -27,0 +27,0 @@ });

@@ -16,5 +16,8 @@ ```

[![Build Status](https://travis-ci.org/voodootikigod/node-serialport.png?branch=master)](https://travis-ci.org/voodootikigod/node-serialport)
[![Gitter chat](https://badges.gitter.im/voodootikigod/node-serialport.png)](https://gitter.im/voodootikigod/node-serialport)
Version: 1.4.0 - Released April 8, 2014
For all discussions, designs, and clarifications, we recommend you join our Gitter Chat room: [https://gitter.im/voodootikigod/node-serialport](https://gitter.im/voodootikigod/node-serialport)
Version: 1.4.1 - Released July 7, 2014
*****

@@ -138,3 +141,3 @@

* baudrate: Baud Rate, defaults to 9600. Must be one of: 115200, 57600, 38400, 19200, 9600, 4800, 2400, 1800, 1200, 600, 300, 200, 150, 134, 110, 75, or 50.
* baudrate: Baud Rate, defaults to 9600. Should be one of: 115200, 57600, 38400, 19200, 9600, 4800, 2400, 1800, 1200, 600, 300, 200, 150, 134, 110, 75, or 50. Custom rates as allowed by hardware is supported.
* databits: Data Bits, defaults to 8. Must be one of: 8, 7, 6, or 5.

@@ -141,0 +144,0 @@ * stopbits: Stop Bits, defaults to 1. Must be one of: 1 or 2.

@@ -9,2 +9,3 @@ /*jslint node: true */

// to regular build from source.
var binary = require('node-pre-gyp');

@@ -152,3 +153,3 @@ var path = require('path');

var err = new Error("Disconnected");
callback(err);
self.emit("disconnect",err);
};

@@ -193,2 +194,3 @@

} else {
console.log("open");
self.emit('error', err);

@@ -216,2 +218,3 @@ }

} else {
console.log("write-fd");
self.emit('error', err);

@@ -230,2 +233,3 @@ }

if (err) {
console.log("write");
self.emit('error', err);

@@ -261,3 +265,2 @@ }

// one.
var thisPool = self.pool;
var toRead = Math.min(self.pool.length - self.pool.used, ~~self.bufferSize);

@@ -269,2 +272,3 @@ var start = self.pool.used;

if (err) {
if (err.code && err.code === 'EAGAIN') {

@@ -274,34 +278,38 @@ if (self.fd >= 0) {

}
} else if (err.code && (err.code === 'ENXIO' || (err.errno===-1 || err.code === 'UNKNOWN'))) { // handle edge case were mac/unix doesn't clearly know the error.
self.disconnected();
} else {
self.fd = null;
console.log("afterRead");
self.emit('error', err);
self.readable = false;
}
}
// Since we will often not read the number of bytes requested,
// let's mark the ones we didn't need as available again.
self.pool.used -= bytesRequested - bytesRead;
if (bytesRead === 0) {
if (self.fd >= 0) {
self.serialPoller.start();
}
} else {
var b = self.pool.slice(start, start + bytesRead);
// Since we will often not read the number of bytes requested,
// let's mark the ones we didn't need as available again.
self.pool.used -= bytesRequested - bytesRead;
// do not emit events if the stream is paused
if (self.paused) {
self.buffer = Buffer.concat([self.buffer, b]);
return;
if (bytesRead === 0) {
if (self.fd >= 0) {
self.serialPoller.start();
}
} else {
self._emitData(b);
}
var b = self.pool.slice(start, start + bytesRead);
// do not emit events anymore after we declared the stream unreadable
if (!self.readable) {
return;
// do not emit events if the stream is paused
if (self.paused) {
self.buffer = Buffer.concat([self.buffer, b]);
return;
} else {
self._emitData(b);
}
// do not emit events anymore after we declared the stream unreadable
if (!self.readable) {
return;
}
self._read();
}
self._read();
}
}

@@ -348,2 +356,42 @@

SerialPort.prototype.disconnected = function (callback) {
var self = this;
var fd = self.fd;
// send notification of disconnect
if (self.options.disconnectedCallback) {
self.options.disconnectedCallback();
} else {
self.emit("disconnect");
}
self.paused = true;
self.closing = true;
self.emit("close");
// clean up all other items
var fd = self.fd;
try {
factory.SerialPortBinding.close(fd, function (err) {
});
} catch (e) {
//handle silently as we are just cleaning up the OS.
}
self.removeAllListeners();
self.closing = false;
self.fd = 0;
if (process.platform !== 'win32') {
self.readable = false;
self.serialPoller.close();
}
if (callback) {
callback();
}
}
SerialPort.prototype.close = function (callback) {

@@ -362,2 +410,3 @@ var self = this;

} else {
console.log("sp not open");
self.emit('error', err);

@@ -376,2 +425,3 @@ }

} else {
console.log("doclose");
self.emit('error', err);

@@ -378,0 +428,0 @@ }

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc