diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2016-04-07 12:24:28 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2016-04-07 12:24:28 +0200 |
commit | dee0a619bff88776d2b6c5b824fc8e8950418f70 (patch) | |
tree | 9b9cb6801f9d6703b6e5068c84e3cfc86dd42814 /io | |
parent | c076babe3ce636d60a699f66e4912c4d043b0412 (diff) |
Revert "reduce unnecessary realloc'ing"
This reverts commit 9f6e6fabcd5718e0b65437c5ce398e520f47aae1, which is wrong, as
it would cause the functions to now try to read aReadBytes.getLength() bytes if
that is initially larger than nBytesToRead.
Diffstat (limited to 'io')
-rw-r--r-- | io/source/acceptor/acc_socket.cxx | 10 | ||||
-rw-r--r-- | io/source/connector/ctr_pipe.cxx | 9 | ||||
-rw-r--r-- | io/source/connector/ctr_socket.cxx | 7 |
3 files changed, 8 insertions, 18 deletions
diff --git a/io/source/acceptor/acc_socket.cxx b/io/source/acceptor/acc_socket.cxx index 3fe29f3c0596..b1a30a15a82f 100644 --- a/io/source/acceptor/acc_socket.cxx +++ b/io/source/acceptor/acc_socket.cxx @@ -198,12 +198,13 @@ namespace io_acceptor { { notifyListeners(this, &_started, callStarted); - if( aReadBytes.getLength() < nBytesToRead ) + if( aReadBytes.getLength() != nBytesToRead ) { aReadBytes.realloc( nBytesToRead ); } - sal_Int32 i = m_socket.read( aReadBytes.getArray() , aReadBytes.getLength() ); + sal_Int32 i = 0; + i = m_socket.read( aReadBytes.getArray() , aReadBytes.getLength() ); if(i != nBytesToRead) { @@ -219,10 +220,7 @@ namespace io_acceptor { throw ioException; } - if( i < aReadBytes.getLength() ) - { - aReadBytes.realloc( i ); - } + return i; } else diff --git a/io/source/connector/ctr_pipe.cxx b/io/source/connector/ctr_pipe.cxx index dafdc4208019..df1529173ba6 100644 --- a/io/source/connector/ctr_pipe.cxx +++ b/io/source/connector/ctr_pipe.cxx @@ -49,16 +49,11 @@ namespace stoc_connector { { if( ! m_nStatus ) { - if( aReadBytes.getLength() < nBytesToRead ) + if( aReadBytes.getLength() != nBytesToRead ) { aReadBytes.realloc( nBytesToRead ); } - sal_Int32 n = m_pipe.read( aReadBytes.getArray() , aReadBytes.getLength() ); - if( n < aReadBytes.getLength() ) - { - aReadBytes.realloc( n ); - } - return n; + return m_pipe.read( aReadBytes.getArray() , aReadBytes.getLength() ); } else { throw IOException(); diff --git a/io/source/connector/ctr_socket.cxx b/io/source/connector/ctr_socket.cxx index 787a470d14b1..2c0d3f691b2f 100644 --- a/io/source/connector/ctr_socket.cxx +++ b/io/source/connector/ctr_socket.cxx @@ -123,7 +123,7 @@ namespace stoc_connector { { notifyListeners(this, &_started, callStarted); - if( aReadBytes.getLength() < nBytesToRead ) + if( aReadBytes.getLength() != nBytesToRead ) { aReadBytes.realloc( nBytesToRead ); } @@ -143,10 +143,7 @@ namespace stoc_connector { throw ioException; } - if( i < aReadBytes.getLength() ) - { - aReadBytes.realloc( i ); - } + return i; } else |