@@ -465,17 +465,19 @@ for correcting unsigned values validation
465465 inline void fieldOff () {setFieldMode (false );}
466466 };
467467
468- class StringStream :public menuIn {
469- public:
470- const char *src;
471- StringStream (const char *s):src(s) {}
472- int available () override {return 0 !=*src;}
473- int read () override {return *src++;}
474- int peek () override {return *src?*src:-1 ;}
475- void flush () override {while (*src) src++;}
476- size_t write (uint8_t ) override {return 0 ;}
477- operator const String () {return String (src);}
478- };
468+ #ifdef MENU_ASYNC
469+ class StringStream :public menuIn {
470+ public:
471+ const char *src;
472+ StringStream (const char *s):src(s) {}
473+ int available () override {return 0 !=*src;}
474+ int read () override {return *src++;}
475+ int peek () override {return *src?*src:-1 ;}
476+ void flush () override {while (*src) src++;}
477+ size_t write (uint8_t ) override {return 0 ;}
478+ operator const String () {return String (src);}
479+ };
480+ #endif
479481
480482 // /////////////////////////////////////////////////////////////////////////
481483 // base for all menu output devices
@@ -755,10 +757,12 @@ for correcting unsigned values validation
755757
756758 // menu IO - external iteration functions
757759 void doInput (menuIn& in);
758- inline void doInput (const char *in) {
759- StringStream inStr (in);
760- while (inStr.available ()) doInput (inStr);
761- }
760+ #ifdef MENU_ASYNC
761+ inline void doInput (const char *in) {
762+ StringStream inStr (in);
763+ while (inStr.available ()) doInput (inStr);
764+ }
765+ #endif
762766 inline void doInput () {doInput (in);}
763767 inline void doOutput () {
764768 if (!sleepTask) printMenu ();
0 commit comments