diff options
Diffstat (limited to 'mail/emailrelay/files/patch-src_main_configuration.cpp')
| -rw-r--r-- | mail/emailrelay/files/patch-src_main_configuration.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/mail/emailrelay/files/patch-src_main_configuration.cpp b/mail/emailrelay/files/patch-src_main_configuration.cpp new file mode 100644 index 000000000000..2b16cad1145d --- /dev/null +++ b/mail/emailrelay/files/patch-src_main_configuration.cpp @@ -0,0 +1,21 @@ +--- src/main/configuration.cpp.orig 2013-12-07 22:55:50 UTC ++++ src/main/configuration.cpp +@@ -86,10 +86,14 @@ G::Strings Main::Configuration::listenin + // the required list of addresses + for( G::Strings::iterator p = result.begin() ; p != result.end() ; ) + { +- if( protocol.empty() || protocol == G::Str::head( *p , (*p).find('=') , protocol ) ) +- *p++ = G::Str::tail( *p , (*p).find('=') , *p ) ; +- else +- p = result.erase( p ) ; ++ std::string::size_type pos = (*p).find('='); ++ if( pos != std::string::npos ) { ++ if( protocol.empty() || protocol == G::Str::head( *p , pos , protocol ) ) ++ *p++ = G::Str::tail( *p , pos , *p ) ; ++ else ++ p = result.erase( p ) ; ++ } else ++ ++p; + } + + return result ; |
