From 9a2a421a9c54c2dd3fab29e0af9ca5446935d895 Mon Sep 17 00:00:00 2001
From: Thomas Habets <thomas@habets.se>
Date: Sat, 21 Dec 2019 18:36:21 +0000
Subject: gr-blocks/file.*: Remove needless memory management

---
 gr-blocks/lib/file_descriptor_source_impl.cc | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

(limited to 'gr-blocks/lib/file_descriptor_source_impl.cc')

diff --git a/gr-blocks/lib/file_descriptor_source_impl.cc b/gr-blocks/lib/file_descriptor_source_impl.cc
index 4ecdf5345c..276510056a 100644
--- a/gr-blocks/lib/file_descriptor_source_impl.cc
+++ b/gr-blocks/lib/file_descriptor_source_impl.cc
@@ -58,7 +58,7 @@ file_descriptor_source_impl::file_descriptor_source_impl(size_t itemsize,
       d_itemsize(itemsize),
       d_fd(fd),
       d_repeat(repeat),
-      d_residue(new unsigned char[itemsize]),
+      d_residue(itemsize),
       d_residue_len(0)
 {
 }
@@ -66,7 +66,6 @@ file_descriptor_source_impl::file_descriptor_source_impl(size_t itemsize,
 file_descriptor_source_impl::~file_descriptor_source_impl()
 {
     close(d_fd);
-    delete[] d_residue;
 }
 
 int file_descriptor_source_impl::read_items(char* buf, int nitems)
@@ -77,7 +76,7 @@ int file_descriptor_source_impl::read_items(char* buf, int nitems)
     int nbytes_read = 0;
 
     if (d_residue_len > 0) {
-        memcpy(buf, d_residue, d_residue_len);
+        memcpy(buf, d_residue.data(), d_residue_len);
         nbytes_read = d_residue_len;
         d_residue_len = 0;
     }
@@ -103,7 +102,7 @@ int file_descriptor_source_impl::handle_residue(char* buf, int nbytes_read)
     d_residue_len = nbytes_read % d_itemsize;
     if (d_residue_len > 0) {
         // fprintf (stderr, "handle_residue: %d\n", d_residue_len);
-        memcpy(d_residue, buf + nbytes_read - d_residue_len, d_residue_len);
+        memcpy(d_residue.data(), buf + nbytes_read - d_residue_len, d_residue_len);
     }
     return nitems_read;
 }
-- 
cgit v1.2.3