Adding improvments

This commit is contained in:
César Augusto
2017-12-07 12:20:23 -03:00
parent 54043f5469
commit 6bc3b76a9b
3 changed files with 17 additions and 10 deletions

View File

@ -1,4 +1,5 @@
/*
PubSubClient.cpp - A simple client for MQTT.
Nick O'Leary
http://knolleary.net
@ -243,7 +244,8 @@ uint16_t PubSubClient::readPacket(uint8_t* lengthLength) {
if(!readByte(&digit)) return 0;
buffer[len++] = digit;
length += (digit & 127) * multiplier;
multiplier *= 128;
//multiplier *= 128; replace by multiplier <<=7;
multiplier <<=7;
} while ((digit & 128) != 0);
*lengthLength = len-1;
@ -399,8 +401,11 @@ boolean PubSubClient::publish_P(const char* topic, const uint8_t* payload, unsig
buffer[pos++] = header;
len = plength + 2 + tlen;
do {
digit = len % 128;
len = len / 128;
//digit = len %128; replace by digit = len & 127;
digit = len & 127;
//len = len / 128; replace by len >>= 7;
len >>= 7;
if (len > 0) {
digit |= 0x80;
}
@ -429,8 +434,11 @@ boolean PubSubClient::write(uint8_t header, uint8_t* buf, uint16_t length) {
uint16_t rc;
uint16_t len = length;
do {
digit = len % 128;
len = len / 128;
//digit = len %128; replace by digit = len & 127;
digit = len & 127;
//len = len / 128; replace by len >>= 7;
len >>= 7;
if (len > 0) {
digit |= 0x80;
}