jadonk / bonescript

Scripting tools for BeagleBone and PocketBeagle
http://beagleboard.org
MIT License
514 stars 159 forks source link

bizarre value parsing in attachInterrupt.intHandler #163

Closed mvduin closed 6 years ago

mvduin commented 6 years ago

The local intHandler function inside attachInterrupt contains:

m.value = parseInt(Number(gpioInt[n].value), 2);

I was honestly surprised this even works at all since gpioInt[n].value is a Buffer here, and passing it to Number() makes no sense. Apparently however it just stringifies the buffer and then converts that to number. Of course passing a number to parseInt() also makes little sense, it will again stringify it and again convert it to a number.

I'd suggest changing it to parseInt(gpioInt[n].value.toString(), 2) to clarify what it's doing and avoid two pointless conversions.

jadonk commented 6 years ago

This issue was moved to beagleboard/bonescript#45