aboutsummaryrefslogtreecommitdiff
path: root/cores/arduino/Print.cpp
diff options
context:
space:
mode:
authorCristian Maglie <c.maglie@bug.st>2014-05-24 00:13:07 +0200
committerCristian Maglie <c.maglie@bug.st>2014-05-24 00:13:07 +0200
commitf3e78a4a2920665b45b964049db3ebed9b8f1dc7 (patch)
treec5c0d29a8bb3e0b4cd73fc2c91c82941be29bdce /cores/arduino/Print.cpp
parentc16768565b4ea62a06d21fa6d5cb0cbb0af902fa (diff)
Backported Print class from ide-1.5.x branch
Close #1951
Diffstat (limited to 'cores/arduino/Print.cpp')
-rwxr-xr-xcores/arduino/Print.cpp8
1 files changed, 2 insertions, 6 deletions
diff --git a/cores/arduino/Print.cpp b/cores/arduino/Print.cpp
index 53961ec..5df5630 100755
--- a/cores/arduino/Print.cpp
+++ b/cores/arduino/Print.cpp
@@ -41,7 +41,7 @@ size_t Print::write(const uint8_t *buffer, size_t size)
size_t Print::print(const __FlashStringHelper *ifsh)
{
- const char PROGMEM *p = (const char PROGMEM *)ifsh;
+ PGM_P p = reinterpret_cast<PGM_P>(ifsh);
size_t n = 0;
while (1) {
unsigned char c = pgm_read_byte(p++);
@@ -53,11 +53,7 @@ size_t Print::print(const __FlashStringHelper *ifsh)
size_t Print::print(const String &s)
{
- size_t n = 0;
- for (uint16_t i = 0; i < s.length(); i++) {
- n += write(s[i]);
- }
- return n;
+ return write(s.c_str(), s.length());
}
size_t Print::print(const char str[])