diff options
author | Tavian Barnes <tavianator@gmail.com> | 2009-07-16 01:16:09 +0000 |
---|---|---|
committer | Tavian Barnes <tavianator@gmail.com> | 2009-07-16 01:16:09 +0000 |
commit | 8f01c5394dcce8f5d4e7102dacfcdea9d1f7b021 (patch) | |
tree | 4092a281882e34ac53ec15d582dcbf2cb0d408c0 /libdimensionxx/camera.cpp | |
parent | 1928016fe7aa439d4bfb61d3a7e7b7399ca7a229 (diff) | |
download | dimension-8f01c5394dcce8f5d4e7102dacfcdea9d1f7b021.tar.xz |
Add destructor callbacks for polymorphic C types, and use their base
dmnsn_delete_*() function.
Diffstat (limited to 'libdimensionxx/camera.cpp')
-rw-r--r-- | libdimensionxx/camera.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libdimensionxx/camera.cpp b/libdimensionxx/camera.cpp index b44173c..5786055 100644 --- a/libdimensionxx/camera.cpp +++ b/libdimensionxx/camera.cpp @@ -22,9 +22,13 @@ namespace Dimension { - // Virtual no-op destructor + // Virtual destructor Camera::~Camera() - { } + { + if (unique()) { + dmnsn_delete_camera(dmnsn()); + } + } // Return the result of the dmnsn_camera*'s ray callback Line |