Hi Robert, Hartmut,

The changes seem sound, I'd like to see if there are any side effects though, so I'll test the changes in a fresh build linked to a small application tomorrow. I'll let you know what I find out.

Change #1 (refer to the original e-mail from Hartmut) is ok, it's a small function that will now be inlined instead of in the DLL, preventing the fopen call being made in a different DLL context than the fclose call. The penalty for such a small function is small, so I don't see a problem. Perhaps a comment could be added explaining why this function is inline while all others are extern...

Change #2 is interesting. Trying to be diligent (since /a priori/ I didn't know anything about these settings), I looked up the defines Hartmut added, and found this:

http://blogs.msdn.com/vcblog/archive/2008/05/15/vc-runtime-binding.aspx

It seems that the behavior for resolving the C++ runtime version dependencies changed between VC2005 and VC2008. The defines Hartmut added just bring VC2008's settings back to VC2005 defaults. So in theory, it should have no effect for VC2005 either since the default was already set that way.

I wonder what the implication on user applications will be, considering the information on that page. But I guess if the developer ships the VC runtime DLLs (that he compiled the app with) with his application, or the user has that version or newer of the VC runtime installed, it should be ok. That's what happens for VC2005 after all.

It's true that perhaps those defines should be optional (I would make them default to on, as it will probably not change anything for most users but those who will have the same problems as Hartmut had will want to turn it on - people who want to turn it on will be few and will know the reasons why). Perhaps that should be added to the patch before final submission.

I've compiled OSG and an application I was working on with these changes, and didn't get any adverse change in behavior. Of course, I'm still using VC2005. Perhaps we could wait for someone else using VC2008 to test as well, but as I said, I think the changes are OK even in that context.

Hope this helps,

J-S
--
______________________________________________________
Jean-Sebastien Guay    jean-sebastien.g...@cm-labs.com
                               http://www.cm-labs.com/
                        http://whitestar02.webhop.org/
_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to