[readline] Fix compilation on MinGW
Commit Message
S_ISLNK should not be called outside of an #ifdef.
However, this specific call is actually unnecessary, because
linkok can only be 0 if S_ISLNK is true, per the code above.
I have sent a bug report to bug-readline, though it does not show
up in the online archive yet.
2019-08-13 Christian Biesinger <cbiesinger@google.com>
* colors.c (_rl_print_color_indicator): Remove unnecessary
S_ISLNK check to fix compilation on MinGW.
---
readline/ChangeLog.gdb | 5 +++++
readline/colors.c | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
Comments
>>>>> "Christian" == Christian Biesinger via gdb-patches <gdb-patches@sourceware.org> writes:
Christian> S_ISLNK should not be called outside of an #ifdef.
Christian> However, this specific call is actually unnecessary, because
Christian> linkok can only be 0 if S_ISLNK is true, per the code above.
Christian> I have sent a bug report to bug-readline, though it does not show
Christian> up in the online archive yet.
I didn't see it show up there. I wonder if something went wrong.
Christian> 2019-08-13 Christian Biesinger <cbiesinger@google.com>
Christian> * colors.c (_rl_print_color_indicator): Remove unnecessary
Christian> S_ISLNK check to fix compilation on MinGW.
This looks fine to me. Please check it in.
It's important to be sure to follow up with upstream readline; and to
update the patch in the local tree if Chet uses a different patch.
thank you,
Tom
On Tue, Aug 13, 2019 at 2:46 PM Tom Tromey <tom@tromey.com> wrote:
> >>>>> "Christian" == Christian Biesinger via gdb-patches <gdb-patches@sourceware.org> writes:
>
> Christian> S_ISLNK should not be called outside of an #ifdef.
> Christian> However, this specific call is actually unnecessary, because
> Christian> linkok can only be 0 if S_ISLNK is true, per the code above.
>
> Christian> I have sent a bug report to bug-readline, though it does not show
> Christian> up in the online archive yet.
>
> I didn't see it show up there. I wonder if something went wrong.
I also emailed Chet directly, hopefully that worked.
> Christian> 2019-08-13 Christian Biesinger <cbiesinger@google.com>
>
> Christian> * colors.c (_rl_print_color_indicator): Remove unnecessary
> Christian> S_ISLNK check to fix compilation on MinGW.
>
> This looks fine to me. Please check it in.
Done.
> It's important to be sure to follow up with upstream readline; and to
> update the patch in the local tree if Chet uses a different patch.
Will do.
Christian
On Tue, Aug 13, 2019 at 3:58 PM Christian Biesinger
<cbiesinger@google.com> wrote:
>
> On Tue, Aug 13, 2019 at 2:46 PM Tom Tromey <tom@tromey.com> wrote:
> > It's important to be sure to follow up with upstream readline; and to
> > update the patch in the local tree if Chet uses a different patch.
>
> Will do.
It looks like Chet committed the same patch:
http://git.savannah.gnu.org/cgit/readline.git/diff/colors.c?h=devel&id=c612c3607b183ae654d6c920c729de5444fdb899
Christian
@@ -1,3 +1,8 @@
+2019-08-13 Christian Biesinger <cbiesinger@google.com>
+
+ * colors.c (_rl_print_color_indicator): Remove unnecessary
+ S_ISLNK check to fix compilation on MinGW.
+
2019-08-12 Tom Tromey <tom@tromey.com>
* Imported readline 8.0.
@@ -175,7 +175,7 @@ _rl_print_color_indicator (const char *f)
if (linkok == -1 && _rl_color_indicator[C_MISSING].string != NULL)
colored_filetype = C_MISSING;
- else if (linkok == 0 && S_ISLNK(mode) && _rl_color_indicator[C_ORPHAN].string != NULL)
+ else if (linkok == 0 && _rl_color_indicator[C_ORPHAN].string != NULL)
colored_filetype = C_ORPHAN; /* dangling symlink */
else if(stat_ok != 0)
{