summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--configd/src/apps/sentinel/line-splitter.cpp6
-rw-r--r--storageserver/src/apps/storaged/storage.cpp4
2 files changed, 7 insertions, 3 deletions
diff --git a/configd/src/apps/sentinel/line-splitter.cpp b/configd/src/apps/sentinel/line-splitter.cpp
index e52f4e3f33e..ec1fe41e766 100644
--- a/configd/src/apps/sentinel/line-splitter.cpp
+++ b/configd/src/apps/sentinel/line-splitter.cpp
@@ -88,7 +88,11 @@ LineSplitter::getLine()
char *start = &_buffer[_readPos];
char *end = static_cast<char *>(memchr(start, '\n', bufLen));
if (_eof && !end) {
- end = &_buffer[_writePos-1]; // pretend last byte sent was \n
+ if (_writePos < _size) {
+ end = &_buffer[_writePos]; // pretend last byte sent was followed by \n
+ } else {
+ end = &_buffer[_writePos-1]; // pretend last byte sent was \n
+ }
}
if (end) {
*end = '\0';
diff --git a/storageserver/src/apps/storaged/storage.cpp b/storageserver/src/apps/storaged/storage.cpp
index 8eb955ae930..1d84a73d1ed 100644
--- a/storageserver/src/apps/storaged/storage.cpp
+++ b/storageserver/src/apps/storaged/storage.cpp
@@ -129,9 +129,9 @@ namespace {
if (sigtramp == 0) _exit(EXIT_FAILURE);
// note: this is not totally safe, sigtramp is not protected by a lock
sigtramp->handleSignal(sig);
- } else {
+ } else if (_G_signalCount > 2) {
fprintf(stderr, "Received another shutdown signal %u while "
- "shutdown in progress (count=%u)",
+ "shutdown in progress (count=%u)\n",
sig, _G_signalCount);
}
}