[dpkg] 124/187: dselect: Add replacement new and delete array operators

Reiner Herrmann reiner at reiner-h.de
Sun Nov 6 12:46:32 UTC 2016


This is an automated email from the git hooks/post-receive script.

deki-guest pushed a commit to branch master
in repository dpkg.

commit 1fc6530294334e421c0da3652181eedd2669433e
Author: Guillem Jover <guillem at debian.org>
Date:   Wed Sep 7 04:39:14 2016 +0200

    dselect: Add replacement new and delete array operators
---
 debian/changelog       |  1 +
 dselect/cxx-support.cc | 23 +++++++++++++++++++++++
 2 files changed, 24 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index 80b2582..7c5edfb 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -41,6 +41,7 @@ dpkg (1.18.11) UNRELEASED; urgency=medium
   * Fix free() on uninitialized pointer in error_context_errmsg_format() in
     libdpkg. Regression introduced in dpkg 1.18.7. Closes: #842004
   * Move C++ support code into its own file.
+  * Add replacement new and delete array operators to C++ support code.
   * Architecture support:
     - Add support for AIX operating system.
   * Portability:
diff --git a/dselect/cxx-support.cc b/dselect/cxx-support.cc
index 235a4a7..d850ed5 100644
--- a/dselect/cxx-support.cc
+++ b/dselect/cxx-support.cc
@@ -40,6 +40,17 @@ operator new(size_t size) DPKG_ATTR_THROW(std::bad_alloc)
 	return p;
 }
 
+extern void *
+operator new[](size_t size) DPKG_ATTR_THROW(std::bad_alloc)
+{
+	void *p;
+
+	p = m_malloc(size);
+	assert(p);
+
+	return p;
+}
+
 extern void
 operator delete(void *p) DPKG_ATTR_NOEXCEPT
 {
@@ -51,3 +62,15 @@ operator delete(void *p, size_t size) DPKG_ATTR_NOEXCEPT
 {
 	free(p);
 }
+
+extern void
+operator delete[](void *a) DPKG_ATTR_NOEXCEPT
+{
+	free(a);
+}
+
+extern void
+operator delete[](void *a, size_t size) DPKG_ATTR_NOEXCEPT
+{
+	free(a);
+}

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/dpkg.git



More information about the Reproducible-commits mailing list