Regarding the other functions, I don't recommend putting them in unless
they're actually needed somewhere. More code = more future maintenance and
greater probability of bugs. I've already spotted a bug in cleanRelativePath
("../.." will give an empty path) so it's likely there are others hiding in
there.

On 15 February 2011 13:37, Sukender <[email protected]> wrote:

> Forget about using macros, I did not spot that there were so much "wide"
> windows functions calls...
>
> Sukender
> PVLE - Lightweight cross-platform game engine -
> http://pvle.sourceforge.net/
>
> ----- "Sukender" <[email protected]> a écrit :
>
> > Hi Michael,
> >
> > I haven't tested your code yet, but may I suggest to use the macros
> > from FileUtils.cpp, as I put in my submission (such as
> > OSGDB_STRING_TO_FILENAME, OSGDB_FILENAME_TO_STRING...)?
> > Anyway, if it works as expected, that's nice. Thanks for the
> > submission.
> >
> > About the functions I coded, do you think they should be kept and
> > exposed in the header (I mean only the pertinent ones), or simply
> > removed?
> >
> > Cheers,
> >
> > Sukender
> > PVLE - Lightweight cross-platform game engine -
> > http://pvle.sourceforge.net/
> >
> > ----- "Michael Platings" <[email protected]> a écrit :
> >
> > > Hi Robert & Sukender,
> > > I'm guessing that the stack corruption was caused by calling
> > > GetFullPathNameW with the nBufferLength argument as the number of
> > > bytes in the buffer, rather than the number of characters. I've
> > > attached code that uses GetFullPathNameW et al. with _countof()
> > rather
> > > than sizeof() and this works fine.
> > > Cheers
> > > Michael
> > >
> > >
> > > On 14 February 2011 12:24, Robert Osfield < [email protected]
> > >
> > > wrote:
> > >
> > >
> > > Hi Sukender and Michael,
> > >
> > > Michael could you review Sukender's changee and make comments as I
> > > can't provide expertise on the Win32 side so have to defer to the
> > > community.
> > >
> > > Thanks,
> > > Robert.
> > >
> > > On Fri, Feb 11, 2011 at 9:08 AM, Sukender < [email protected] >
> > wrote:
> > > > Hi Michael and Robert,
> > > >
> > > > Here is the modified submission. Thoughts?
> > > >
> > > > Sukender
> > > > PVLE - Lightweight cross-platform game engine -
> > > http://pvle.sourceforge.net/
> > > >
> > > > ----- "Sukender" < [email protected] > a écrit :
> > > >
> > > >> You're absolutely right, Michael, but the function is called only
> > > for
> > > >> complete paths. I'll make a tiny change in order to make it
> > clearer
> > > >> (or make the function more general).
> > > >>
> > > >> Sukender
> > > >> PVLE - Lightweight cross-platform game engine -
> > > >> http://pvle.sourceforge.net/
> > > >>
> > > >> ----- "Michael Platings" < [email protected] > a écrit :
> > > >>
> > > >> > Hi Sukender,
> > > >> > I just had a quick look at this and if I'm reading it right,
> > > valid
> > > >> > paths such as "..\..\folder\thing.osg" would cause a warning in
> > > >> > cleanPath() and would return an incorrect path.
> > > >> >
> > > >> >
> > > >> > On 10 February 2011 16:05, Sukender < [email protected] > wrote:
> > > >> >
> > > >> >
> > > >> > Hi Robert,
> > > >> >
> > > >> > This is kind of tricky submission... I found that the current
> > > >> > getRealPath() implementation for Windows doesn't work well with
> > > UTF8
> > > >> > paths. So I tried to add the support using Unicode Windows API
> > > >> calls.
> > > >> > But unfortunately, the GetFullPathNameW() *corrupts the stack*!
> > > >> Yes...
> > > >> > I've done multiple tries and each with the same conclusion. I
> > > added
> > > >> a
> > > >> > detailed comment about this, and finally wrote my own
> > > implementation
> > > >> > of this Windows API function. So you'll find:
> > > >> > - getFullPathName(), a replacement for GetFullPathNameA() and
> > > >> > GetFullPathNameW()
> > > >> > - cleanPath(), which simply removes "." and ".." from a path
> > > >> > - and a modified getRealPath()
> > > >> >
> > > >> > This is a bit risky as this is quite low level. Moreover I
> > cannot
> > > be
> > > >> > sure this submission 100% works in all cases, and I do not have
> > > >> access
> > > >> > to more robust impementations (ie. C++0x or boost::filesystem).
> > > >> > Please tell me if it seems okay for you.
> > > >> >
> > > >> > File modified: rev.12156.
> > > >> >
> > > >> > Cheers,
> > > >> >
> > > >> > Sukender
> > > >> > PVLE - Lightweight cross-platform game engine -
> > > >> > http://pvle.sourceforge.net/
> > > >> >
> > > >> > _______________________________________________
> > > >> > osg-submissions mailing list
> > > >> > [email protected]
> > > >> >
> > > >>
> > >
> >
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
> > > >> >
> > > >> >
> > > >> >
> > > >> > _______________________________________________
> > > >> > osg-submissions mailing list
> > > >> > [email protected]
> > > >> >
> > > >>
> > >
> >
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
> > > >> _______________________________________________
> > > >> osg-submissions mailing list
> > > >> [email protected]
> > > >>
> > >
> >
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
> > > >
> > > > _______________________________________________
> > > > osg-submissions mailing list
> > > > [email protected]
> > > >
> > >
> >
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
> > > >
> > > >
> > > _______________________________________________
> > > osg-submissions mailing list
> > > [email protected]
> > >
> >
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
> > >
> > >
> > > _______________________________________________
> > > osg-submissions mailing list
> > > [email protected]
> > >
> >
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
> > _______________________________________________
> > osg-submissions mailing list
> > [email protected]
> >
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
> _______________________________________________
> osg-submissions mailing list
> [email protected]
>
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
>
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to