modified: src1/input.c
[GalaxyCodeBases.git] / c_cpp / lib / natsort / vandyke.txt
blob74529e80703a511b3c9d2702a5979392e0fe3974
1 Return-Path: <bryan.ivandyke.com>
2 X-Original-To: mbp.sourcefrog.net
3 Delivered-To: mbp.ozlabs.org
4 Received: from mta5.wss.scd.yahoo.com (mta5.wss.scd.yahoo.com [66.218.85.36])
5         by ozlabs.org (Postfix) with ESMTP id 26BEB2BD6B
6         for <mbp.sourcefrog.net>; Sat, 31 Jul 2004 05:16:07 +1000 (EST)
7 Received: from [192.168.0.15] (64.25.194.20) by mta5.wss.scd.yahoo.com (7.0.016) (authenticated as bryan.ivandyke.com)
8         id 40A02BAF03A65A34 for mbp.sourcefrog.net; Fri, 30 Jul 2004 12:16:01 -0700
9 Message-ID: <410A9E73.20301.ivandyke.com>
10 Date: Fri, 30 Jul 2004 15:16:03 -0400
11 From: Bryan VanDyke <bryan.ivandyke.com>
12 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040616
13 X-Accept-Language: en-us, en
14 MIME-Version: 1.0
15 To: mbp.sourcefrog.net
16 Subject: Possible bug in natural sort strnatcmp.c
17 Content-Type: text/plain; charset=us-ascii; format=flowed
18 Content-Transfer-Encoding: 7bit
19 X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on ozlabs.org
20 X-Spam-Level: 
21 X-Spam-Status: No, hits=-4.1 required=3.2 tests=BAYES_00,RCVD_IN_BLARS_RBL 
22         autolearn=no version=2.63
23 Content-Length: 791
24 Lines: 51
26 Mr. Pool,
28 First, thank you for sharing your nice piece of code.
30 I was trying it out and was getting some weird results. It was giving 
31 results different than what I wanted. I made a minor modification and 
32 thought I pass the changes back to you incase they may be of some 
33 usefullness.
35 With the files:
36 01.txt
37 03.txt
38 12.txt
39 2.txt
40 21.txt
42 It sorted as:
43 01.txt
44 03.txt
45 2.txt  <---
46 12.txt
47 21.txt
49 I found by changing:
51 /* skip over leading spaces or zeros */
52 while (isspace(ca))
53      ca = a[++ai];
55 while (isspace(cb))
56    cb = b[++bi];
58 TO:
60 /* skip over leading spaces or zeros */
61 while (isspace(ca) || ca == '0' )
62      ca = a[++ai];
64 while (isspace(cb) || cb == '0' )
65      cb = b[++bi];
67 I get the results I wanted:
69 01.txt
70 2.txt  <---
71 03.txt
72 12.txt
73 21.txt
75 Bryan VanDyke
76 bryan.ivandyke.com