#30 patch for bug 3087668


Bug 3087668 seems to occur because the trailing backslash in (ext:probe-pathname "C:\\") is stripped off before real_path, which means it gets interpreted as a relative path. Additionally, FindFirstFile fails when passed a path with a trailing backslash. The attached patch appears to fix this problem; I'm not terribly familiar with the source so hopefully it's appropriate.


  • Julian Squires

    Julian Squires - 2010-10-14

    Sorry, my original patch didn't include a ChangeLog entry, and included a few errant tabs.

  • Sam Steingold

    Sam Steingold - 2010-10-15

    thanks for the patch.
    unfortunately, it breaks clisp on unix.

  • Julian Squires

    Julian Squires - 2010-10-15

    Doh. I'm sorry, I hadn't realized the code paths I was changing weren't all win32. I've included an #ifdef in the patch, but at this point you probably know a cleaner solution than I.

  • Arseny Slobodyuk

    Thanks for the patch and investigation, Julian. I'll se how to fix the bug, probably real_path shouldn't add the slash. As far as I can see, (probe-pathname "C:\\") should be equivalent to (probe-pathname "C:") and mean "drive C exists", correct me if I wrong.

  • Arseny Slobodyuk

    • assigned_to: nobody --> ampy
  • Sam Steingold

    Sam Steingold - 2010-10-17

    Arseny, I disagree,
    c: means the default directory on c drive c
    c:/ means the top-level directory on drive c

  • Arseny Slobodyuk

    Yep, I missed the return values - thought it's a predicate. I meant that if default directory exists then the drive exists and vice versa. But it's not true - I just checked.

  • Arseny Slobodyuk

    Accepted as a basis for bigger patch.

  • Arseny Slobodyuk

    • status: open --> closed-accepted

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks