diff --git a/src/utils/file_io.cxx b/src/utils/file_io.cxx index 82979a7..a47b889 100644 --- a/src/utils/file_io.cxx +++ b/src/utils/file_io.cxx @@ -91,11 +91,11 @@ Socket *tcpip = (Socket *)0; Address *localaddr = (Address *)0; const char *b64_start = "[b64:start]"; -const char *b64_end = "[b64:end]"; +const char *b64_end = "\n[b64:end]"; const char *b128_start = "[b128:start]"; -const char *b128_end = "[b128:end]"; +const char *b128_end = "\n[b128:end]"; const char *b256_start = "[b256:start]"; -const char *b256_end = "[b256:end]"; +const char *b256_end = "\n[b256:end]"; std::string errtext; diff --git a/src/utils/xml_io.cxx b/src/utils/xml_io.cxx index 35b7c72..f38a504 100644 --- a/src/utils/xml_io.cxx +++ b/src/utils/xml_io.cxx @@ -170,7 +170,11 @@ void send_new_modem(std::string modem) } catch (const XmlRpc::XmlRpcException& e) { LOG_ERROR("%s xmlrpc_errno = %d", e.getMessage().c_str(), xmlrpc_errno); } + update_interval = XMLRPC_UPDATE_AFTER_WRITE; + + // Give FLDIGI time to switch modems. + MilliSleep(150); } /** ******************************************************** @@ -345,7 +349,7 @@ std::string get_char_timing(int character) LOG_ERROR("%s xmlrpc_errno = %d", e.getMessage().c_str(), xmlrpc_errno); } - update_interval = XMLRPC_UPDATE_AFTER_WRITE * 2; + update_interval = XMLRPC_UPDATE_AFTER_WRITE; return response; } @@ -630,7 +634,6 @@ void * xmlrpc_loop(void *d) } MilliSleep(XMLRPC_UPDATE_INTERVAL); - } return NULL; }