if(!a)
a = a0;
temp_u = a->allocate(dims, size.p, type(), data, step.p, accessFlags, usageFlags);
- temp_u->refcount = 1;
}
- UMat::getStdAllocator()->allocate(temp_u, accessFlags, usageFlags); // TODO result is not checked
+ bool allocated = false;
+ try
+ {
+ allocated = UMat::getStdAllocator()->allocate(temp_u, accessFlags, usageFlags);
+ }
+ catch (const cv::Exception& e)
+ {
+ fprintf(stderr, "Exception: %s\n", e.what());
+ }
+ if (!allocated)
+ {
+ allocated = getStdAllocator()->allocate(temp_u, accessFlags, usageFlags);
+ CV_Assert(allocated);
+ }
hdr.flags = flags;
setSize(hdr, dims, size.p, step.p);
finalizeHdr(hdr);