Subject: bug#19992: closed (Re: bug#19992: Small mistake in comment in source code of ls)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 04 Mar 2015 12:22:02 +0000

Your bug report

#19992: Small mistake in comment in source code of ls

which was filed against the coreutils package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
19992: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19992
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#19992: Small mistake in comment in source code of ls
From: Pádraig Brady <[email-masked]>
To: Jarosław Gruca <[email-masked]>, [email-masked]
Date: Wed, 04 Mar 2015 12:21:08 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

On 03/03/15 21:40, Jarosław Gruca wrote:
> In the source code of "ls" (file "src/ls.c"):
> 
> { 0, NULL },       /* ec: End color (replaces lc+no+rc) */
> 
> there is a small mistake in the comment.
> 
> In the place of 'lc+no+rc' should be 'lc+rs+rc' ('rs' instead of 'no').
> Each file is written as 'lc+colorcode+rc+filename+ec', but if
> the 'ec' code is undefined, the sequence 'lc+rs+rc' (with 'rs'),
> and not 'lc+no+rc' (with 'no'), is used:
> 
> static void
> prep_non_filename_text (void)
> {
>   if (color_indicator[C_END].string != NULL)
>     put_indicator (&color_indicator[C_END]);
>   else
>     {
>       put_indicator (&color_indicator[C_LEFT]);
>       put_indicator (&color_indicator[C_RESET]);   <--- here
>       put_indicator (&color_indicator[C_RIGHT]);
>     }
> }
> 
> To ensure, I did several test by changing 'no' and 'rs'
> with different values and observing printed escape sequences:
> 
> LS_COLORS='no=x:rs=y:...'       # x,y = different SGR codes
> ls -l --color=always > foo

Pushed at http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=69410690

thanks!
Pádraig.

Subject: Small mistake in comment in source code of ls
From: Jarosław Gruca <[email-masked]>
To: [email-masked]
Date: Tue, 03 Mar 2015 22:40:56 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

In the source code of "ls" (file "src/ls.c"):

{ 0, NULL },       /* ec: End color (replaces lc+no+rc) */

there is a small mistake in the comment.

In the place of 'lc+no+rc' should be 'lc+rs+rc' ('rs' instead of 'no').
Each file is written as 'lc+colorcode+rc+filename+ec', but if
the 'ec' code is undefined, the sequence 'lc+rs+rc' (with 'rs'),
and not 'lc+no+rc' (with 'no'), is used:

static void
prep_non_filename_text (void)
{
  if (color_indicator[C_END].string != NULL)
    put_indicator (&color_indicator[C_END]);
  else
    {
      put_indicator (&color_indicator[C_LEFT]);
      put_indicator (&color_indicator[C_RESET]);   <--- here
      put_indicator (&color_indicator[C_RIGHT]);
    }
}

To ensure, I did several test by changing 'no' and 'rs'
with different values and observing printed escape sequences:

LS_COLORS='no=x:rs=y:...'       # x,y = different SGR codes
ls -l --color=always > foo

--
Jarosław Gruca