sort's -k flag is buggy when M is also passed

Michael D. Setzer II mikes at guam.net
Wed Jun 29 07:22:39 UTC 2022


Looking at sort.c in busybox seems that
static char key_separator; is just defined, but not 
assigned a default value?
Don't know if this might resolve issue?
static char key_separator=' ';

On 28 Jun 2022 at 22:10, Dennis Chen wrote:

Date sent:      	Tue, 28 Jun 2022 22:10:44 -0700
To:             	<busybox at busybox.net>
Subject:        	sort's -k flag is buggy when M is also 
passed
From:           	"Dennis Chen" <dchen at dennisc.net>

> All commands were run on both Ubuntu busybox v1.30.1 and Alpine busybox
> v1.35.0.
> 
> I ran
> 	echo "3 March\n2 April" | busybox sort -k 2,2M
> and it returned
> 	2 April
> 	3 March
> It should return
> 	3 March
> 	2 April
> and indeed, that is what you get with GNU sort. (It doesn't seem to
> matter what the numbers "2" and "3" are - I replaced them both with the
> string "filler" and got the same result.)
> 
> This seems to only happen when the field number is >1. For instance
> 	echo "March\nApril" | busybox sort -k 1,1M
> correctly outputs
> 	March
> 	April
> 
> It also doesn't happen when M isn't passed into -k. For instance,
> 	echo "a c\nb b" | sort -k 2,2
> correctly returns
> 	b b
> 	a c
> _______________________________________________
> busybox mailing list
> busybox at busybox.net
> http://lists.busybox.net/mailman/listinfo/busybox


+------------------------------------------------------------+
 Michael D. Setzer II - Computer Science Instructor 
(Retired)     
 mailto:mikes at guam.net                            
 mailto:msetzerii at gmail.com
 Guam - Where America's Day Begins                        
 G4L Disk Imaging Project maintainer 
 http://sourceforge.net/projects/g4l/
+------------------------------------------------------------+





More information about the busybox mailing list