1
0
Fork 0
mirror of https://github.com/ruby-opencv/ruby-opencv synced 2023-03-27 23:22:12 -04:00

added error handlings to some functions

This commit is contained in:
ser1zw 2011-08-12 15:59:58 +09:00
parent 52b2b918e5
commit 2ed20191e3
2 changed files with 24 additions and 4 deletions

View file

@ -48,7 +48,12 @@ rb_allocate(VALUE klass)
void void
cvmemstorage_free(void *ptr) cvmemstorage_free(void *ptr)
{ {
cvReleaseMemStorage((CvMemStorage**)&ptr); try {
cvReleaseMemStorage((CvMemStorage**)&ptr);
}
catch (cv::Exception& e) {
raise_cverror(e);
}
} }
VALUE VALUE

View file

@ -101,7 +101,12 @@ free_object(void *ptr)
{ {
if (ptr) { if (ptr) {
unregister_object(ptr); unregister_object(ptr);
cvFree(&ptr); try {
cvFree(&ptr);
}
catch (cv::Exception& e) {
raise_cverror(e);
}
} }
} }
@ -113,7 +118,12 @@ release_object(void *ptr)
{ {
if (ptr) { if (ptr) {
unregister_object(ptr); unregister_object(ptr);
cvRelease(&ptr); try {
cvRelease(&ptr);
}
catch (cv::Exception& e) {
raise_cverror(e);
}
} }
} }
@ -125,7 +135,12 @@ release_iplconvkernel_object(void *ptr)
{ {
if (ptr) { if (ptr) {
unregister_object(ptr); unregister_object(ptr);
cvReleaseStructuringElement((IplConvKernel**)(&ptr)); try {
cvReleaseStructuringElement((IplConvKernel**)(&ptr));
}
catch (cv::Exception& e) {
raise_cverror(e);
}
} }
} }