summaryrefslogtreecommitdiff
path: root/firmware/include
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2009-03-01 17:55:59 +0000
committerThomas Martitz <kugel@rockbox.org>2009-03-01 17:55:59 +0000
commitd13f1a485f0e35a6fbbd0a664f14acc3798d52a0 (patch)
tree22cacb27b6ab481c0bfc250120dde404320811f2 /firmware/include
parente6c023cb64dea599bb711b2b4ddb197efdb1d187 (diff)
downloadrockbox-d13f1a485f0e35a6fbbd0a664f14acc3798d52a0.tar.gz
rockbox-d13f1a485f0e35a6fbbd0a664f14acc3798d52a0.zip
Commit FS#8314. This adds strnat[case]cmp written by Martin Pool, which respects numbers within strings, and gives a more intuitive
sorting. This also adds a setting, so that the sorting can be used in the file browser. The implementation is very generic, and can possibly be used in other places. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20155 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/include')
-rw-r--r--firmware/include/strnatcmp.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/firmware/include/strnatcmp.h b/firmware/include/strnatcmp.h
new file mode 100644
index 0000000000..50276554e6
--- /dev/null
+++ b/firmware/include/strnatcmp.h
@@ -0,0 +1,30 @@
1/* -*- mode: c; c-file-style: "k&r" -*-
2
3 strnatcmp.c -- Perform 'natural order' comparisons of strings in C.
4 Copyright (C) 2000, 2004 by Martin Pool <mbp sourcefrog net>
5
6 This software is provided 'as-is', without any express or implied
7 warranty. In no event will the authors be held liable for any damages
8 arising from the use of this software.
9
10 Permission is granted to anyone to use this software for any purpose,
11 including commercial applications, and to alter it and redistribute it
12 freely, subject to the following restrictions:
13
14 1. The origin of this software must not be misrepresented; you must not
15 claim that you wrote the original software. If you use this software
16 in a product, an acknowledgment in the product documentation would be
17 appreciated but is not required.
18 2. Altered source versions must be plainly marked as such, and must not be
19 misrepresented as being the original software.
20 3. This notice may not be removed or altered from any source distribution.
21*/
22
23
24/* CUSTOMIZATION SECTION
25 *
26 * You can change this typedef, but must then also change the inline
27 * functions in strnatcmp.c */
28
29int strnatcmp(const char *a, const char *b);
30int strnatcasecmp(const char *a, const char *b);