You have to specify _SECURE_SCL=0 in every module of your project, including
static and dynamic libraries.   Otherwise the vector data structure changes
size and the module with the larger size will barf on memory.

You can thank Microsoft for the fragile implementation and the huge slowdown
if you fail to set it to zero.  (some of our applications need it set to
zero even for debug builds, because the added overhead is very, very high)

Chris
 


On 10/24/08 10:04 PM, "Bob Friesenhahn" <[EMAIL PROTECTED]>
wrote:

> On Sat, 25 Oct 2008, [EMAIL PROTECTED] wrote:
> 
>> It turns out that having _SECURE_SCL=0 defined in my project (not even in the
>> OpenEXR project) is what OpenEXR couldn't handle--for whatever reason I
>> cannot imagine. What's going on here? I need this setting as otherwise the
>> slowdown from the bounds checking the Visual Studio nanny does on STL vectors
>> in opposition to the standard is unacceptable.
> 
> Google says:
> 
> http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackI
> D=352481
> 
> "Specifing a project with #define SECURE_SCL 0 which uses
> std::vector<..> may result into a case in which the application
> overwrites memory."
> 
> Bob
> ======================================
> Bob Friesenhahn
> [EMAIL PROTECTED], http://www.simplesystems.org/users/bfriesen/
> GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/
> 
> 
> 
> _______________________________________________
> Openexr-devel mailing list
> [email protected]
> http://lists.nongnu.org/mailman/listinfo/openexr-devel



_______________________________________________
Openexr-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/openexr-devel

Reply via email to