diff options
Diffstat (limited to 'storage/connect/filamap.cpp')
-rw-r--r-- | storage/connect/filamap.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/storage/connect/filamap.cpp b/storage/connect/filamap.cpp index 8abe6cedd07..08f87e2b836 100644 --- a/storage/connect/filamap.cpp +++ b/storage/connect/filamap.cpp @@ -358,7 +358,12 @@ int MAPFAM::ReadBuffer(PGLOBAL g) while (*Mempos++ != '\n') ; // What about Unix ??? // Set caller line buffer - len = (Mempos - Fpos) - Ending; + len = (Mempos - Fpos) - 1; + + // Don't rely on ENDING setting + if (len > 0 && *(Mempos - 2) == '\r') + len--; // Line ends by CRLF + memcpy(Tdbp->GetLine(), Fpos, len); Tdbp->GetLine()[len] = '\0'; return RC_OK; |