summaryrefslogtreecommitdiffstats
path: root/src/streams-jar.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/streams-jar.cpp')
-rw-r--r--src/streams-jar.cpp13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/streams-jar.cpp b/src/streams-jar.cpp
index 521b1f9a9..e597822e9 100644
--- a/src/streams-jar.cpp
+++ b/src/streams-jar.cpp
@@ -1,3 +1,4 @@
+#include <vector>
#include "streams-jar.h"
namespace Inkscape {
@@ -81,9 +82,8 @@ int JarBuffer::consume_compressed(int nbytes)
int ret=do_consume_and_inflate(nbytes);
if ( ret == EOF && eflen > 0 ) {
- guint8 *efbuf=new guint8[eflen];
- _urihandle->read(efbuf, eflen);
- delete [] efbuf;
+ std::vector<guint8> efbuf(eflen);
+ _urihandle->read(&efbuf[0], eflen);
return 1;
}
@@ -92,13 +92,12 @@ int JarBuffer::consume_compressed(int nbytes)
int JarBuffer::consume_uncompressed(int nbytes)
{
- guint8 *data=new guint8[nbytes];
- int consumed=consume(data, nbytes);
+ std::vector<guint8> data(nbytes);
+ int consumed=consume(&data[0], nbytes);
if ( consumed != EOF ) {
- copy_to_get(data, consumed);
+ copy_to_get(&data[0], consumed);
compressed_left -= consumed;
}
- delete [] data;
return consumed;
}