From: Christopher Faylor <me@cgf.cx>
To: gdb-patches@sources.redhat.com, Eli Zaretskii <eliz@gnu.org>
Subject: Re: [RFC] fullname attribute for GDB/MI stack frames
Date: Wed, 04 May 2005 14:52:00 -0000 [thread overview]
Message-ID: <20050504145200.GI24661@trixie.casa.cgf.cx> (raw)
In-Reply-To: <01c55061$Blat.v2.4$5a644e20@zahav.net.il>
On Wed, May 04, 2005 at 07:24:47AM +0300, Eli Zaretskii wrote:
>> Date: Tue, 3 May 2005 17:39:11 -0400
>> From: Christopher Faylor <me@cgf.cx>
>>
>> Cygwin has realpath and Windows has an equivalent function. AFAIK, it
>> will correctly translate \abc to x:\abc.
>
>No, it will _incorrectly_ translate them: the current drive and
>directory that are in effect when we call these functions are _not_
>what they were when the compiler compiled the source and recorded its
>file name in the debug info.
>
>> I don't know what it will do with d:foo. NT+ shells treat that as
>> "the current directory on drive d:" but that's just something that
>> is special to a shell.
>
>Not true: the notion of a current directory on drive d: is maintained
>by the OS.
The current directory on another drive is maintained by the "OS" only on
Windows 9x variants and on MS-DOS. Otherwise the current directory is
stored in hidden environment variables by the shell. XP/NT and 9x
differ in this regard.
>There's a special OS data structure where it holds the current
>directory for each drive. Also, unlike on Unix, the current directory
>on each drive is globally in effect for all the processes that run in
>the current VM.
This is true only on 9x/Me (and MS-DOS).
>> Probably it should be resolved as "d:\foo".
>
>Please! I'm gonna cry! you are suggesting to revert the code that took
>hard work to get right! openp used to do d:foo -> d:/foo, but that
>was blatantly wrong and caused bugs. Let's not go that way just
>because some test case doesn't seem 100% right!
>
>I am frustrated by my evident inability to communicate to you all the
>simple truth: openp IS OKAY, IT DOESN'T NEED ANY FIXING!
I just built a simple test case (tm) using a mingw version of lrealpath
from libiberty. It fully canonicalizes the path and it even works on XP,
so, apparently, GetFullPathName understand the hidden environment variables.
So, if I type:
myrealpath d:foo
and the cwd on d: is set to \tmp:
c:\>./myrealpath d:foo
d:\tmp\foo
c:\>env - ./myrealpath d:foo
d:\foo
So, AFAICT, libiberty is working fine and it should be safe to expect
that canonicalized names on windows will either be in the form of
x:\y\z or \\x\y\z if this is used.
>> Hopefully the Windows
>> routine for producing absolute paths will do something sensical.
>
>They won't; see above.
>
>> Anyway, it seems like the mingw port should be using GetFullPathName()
>> in gdb_realpath().
>
>I don't see this in my sandbox.
I don't see any calls to lrealpath in gdb either. So, it seems like
gdb isn't using this functionality but maybe it should be.
cgf
next prev parent reply other threads:[~2005-05-04 14:52 UTC|newest]
Thread overview: 103+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-04-01 19:13 Dennis Brueni
2005-04-02 9:22 ` Eli Zaretskii
2005-04-30 19:18 ` Daniel Jacobowitz
2005-05-01 2:19 ` Bob Rossi
2005-05-01 18:24 ` Eli Zaretskii
2005-05-01 18:34 ` Bob Rossi
2005-05-01 19:02 ` Daniel Jacobowitz
2005-05-02 0:55 ` Bob Rossi
2005-05-02 0:54 ` Bob Rossi
2005-05-02 0:58 ` Daniel Jacobowitz
2005-05-02 19:30 ` Eli Zaretskii
2005-05-02 19:36 ` Bob Rossi
2005-05-02 19:52 ` Eli Zaretskii
2005-05-02 19:55 ` Daniel Jacobowitz
2005-05-02 20:42 ` Eli Zaretskii
2005-05-02 20:49 ` Daniel Jacobowitz
2005-05-02 21:20 ` Bob Rossi
2005-05-03 3:49 ` Eli Zaretskii
2005-05-03 3:42 ` Eli Zaretskii
2005-05-03 3:46 ` Daniel Jacobowitz
2005-05-03 19:36 ` Eli Zaretskii
2005-05-03 19:49 ` Daniel Jacobowitz
2005-05-03 20:05 ` Bob Rossi
2005-05-03 20:49 ` Eli Zaretskii
2005-05-04 13:34 ` Daniel Jacobowitz
2005-05-04 13:51 ` Bob Rossi
2005-05-04 13:52 ` Daniel Jacobowitz
2005-05-04 17:51 ` Eli Zaretskii
2005-05-04 18:06 ` Bob Rossi
2005-05-04 20:32 ` Eli Zaretskii
2005-05-04 18:05 ` Eli Zaretskii
2005-05-04 18:32 ` Daniel Jacobowitz
2005-05-04 20:53 ` Eli Zaretskii
2005-05-04 21:07 ` Daniel Jacobowitz
2005-05-04 21:42 ` Eli Zaretskii
2005-05-04 22:01 ` Daniel Jacobowitz
2005-05-04 23:42 ` Christopher Faylor
2005-05-05 4:15 ` Eli Zaretskii
2005-05-04 23:40 ` Christopher Faylor
2005-05-05 0:05 ` Bob Rossi
2005-05-05 4:02 ` Eli Zaretskii
2005-05-04 23:37 ` Christopher Faylor
2005-05-05 4:05 ` Eli Zaretskii
2005-05-03 19:57 ` Bob Rossi
2005-05-03 21:15 ` Eli Zaretskii
2005-05-03 21:39 ` Bob Rossi
2005-05-03 22:14 ` Christopher Faylor
2005-05-04 4:08 ` Eli Zaretskii
2005-05-04 13:39 ` Daniel Jacobowitz
2005-05-04 17:49 ` Eli Zaretskii
2005-05-04 4:18 ` Eli Zaretskii
2005-05-03 21:39 ` Christopher Faylor
2005-05-03 22:24 ` Daniel Jacobowitz
2005-05-03 22:27 ` Christopher Faylor
2005-05-04 2:32 ` Bob Rossi
2005-05-04 3:05 ` Christopher Faylor
2005-05-04 17:42 ` Eli Zaretskii
2005-05-04 4:12 ` Eli Zaretskii
2005-05-04 13:00 ` Daniel Jacobowitz
2005-05-04 4:27 ` Eli Zaretskii
2005-05-04 11:48 ` Bob Rossi
2005-05-04 14:55 ` Christopher Faylor
2005-05-04 15:02 ` Bob Rossi
2005-05-04 17:43 ` Eli Zaretskii
2005-05-04 17:58 ` Christopher Faylor
2005-05-04 18:29 ` Eli Zaretskii
2005-05-04 20:39 ` Eli Zaretskii
2005-05-04 23:34 ` Christopher Faylor
2005-05-05 4:08 ` Eli Zaretskii
2005-05-04 13:45 ` Daniel Jacobowitz
2005-05-04 20:20 ` Eli Zaretskii
2005-05-04 20:30 ` Daniel Jacobowitz
2005-05-04 21:24 ` Eli Zaretskii
2005-05-04 14:52 ` Christopher Faylor [this message]
2005-05-04 17:48 ` Eli Zaretskii
2005-05-04 18:03 ` Christopher Faylor
2005-05-04 18:26 ` Eli Zaretskii
2005-05-03 22:50 ` Bob Rossi
2005-05-04 4:04 ` Eli Zaretskii
2005-05-05 17:20 ` Bob Rossi
2005-05-05 18:04 ` Eli Zaretskii
2005-05-05 19:18 ` Christopher Faylor
2005-05-05 23:53 ` Bob Rossi
2005-05-05 16:22 ` Bob Rossi
2005-05-05 16:26 ` Daniel Jacobowitz
2005-05-05 16:46 ` Bob Rossi
2005-05-05 17:17 ` Daniel Jacobowitz
2005-05-18 4:44 ` Daniel Jacobowitz
-- strict thread matches above, loose matches on Subject: below --
2005-05-05 15:15 Dennis Brueni
2005-05-05 15:25 ` Bob Rossi
2005-05-05 15:28 ` Daniel Jacobowitz
2005-05-05 15:32 ` Bob Rossi
2005-05-02 14:22 Dennis Brueni
2005-05-02 19:38 ` Eli Zaretskii
2005-04-01 15:09 Dennis Brueni
2005-03-29 20:43 Dennis Brueni
2005-03-30 4:46 ` Eli Zaretskii
2005-04-01 1:41 ` Bob Rossi
2005-03-26 13:43 Eli Zaretskii
2005-03-26 13:50 ` Bob Rossi
2005-03-24 20:49 Dennis Brueni
2005-03-23 22:22 Dennis Brueni
2005-03-23 22:34 ` Bob Rossi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20050504145200.GI24661@trixie.casa.cgf.cx \
--to=me@cgf.cx \
--cc=eliz@gnu.org \
--cc=gdb-patches@sources.redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox