annotate gui/skin/cut.c @ 32826:9ce10a293f56

Simplify array initialization.
author ib
date Wed, 16 Feb 2011 17:19:28 +0000
parents 180883b8a488
children 904d9843ffb6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26458
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
1 /*
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
2 * This file is part of MPlayer.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
3 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
4 * MPlayer is free software; you can redistribute it and/or modify
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
5 * it under the terms of the GNU General Public License as published by
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
6 * the Free Software Foundation; either version 2 of the License, or
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
7 * (at your option) any later version.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
8 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
9 * MPlayer is distributed in the hope that it will be useful,
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
12 * GNU General Public License for more details.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
13 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
14 * You should have received a copy of the GNU General Public License along
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
15 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 23077
diff changeset
17 */
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
18
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
19 #include <string.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
20 #include <stdlib.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
21
30529
6ef41a766a74 GUI: #include associated .h files in .c files.
diego
parents: 29263
diff changeset
22 #include "cut.h"
6ef41a766a74 GUI: #include associated .h files in .c files.
diego
parents: 29263
diff changeset
23
32811
b34b8e47a844 Prevent out buffer overflow.
ib
parents: 30633
diff changeset
24 void cutItemString( char * in,char * out,char sep,int num,size_t maxout )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
25 {
32816
180883b8a488 Use appropriate declaration for array indices.
ib
parents: 32815
diff changeset
26 int n;
180883b8a488 Use appropriate declaration for array indices.
ib
parents: 32815
diff changeset
27 unsigned int i,c;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
28 for ( c=0,n=0,i=0;i<strlen( in );i++ )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
29 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
30 if ( in[i] == sep ) n++;
32815
811f6ecdb1c4 Simplify condition.
ib
parents: 32813
diff changeset
31 if ( n >= num && in[i] != sep && c + 1 < maxout ) out[c++] = in[i];
32811
b34b8e47a844 Prevent out buffer overflow.
ib
parents: 30633
diff changeset
32 if ( n >= num && in[i+1] == sep ) break;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
33 }
32811
b34b8e47a844 Prevent out buffer overflow.
ib
parents: 30633
diff changeset
34 if ( c < maxout ) out[c] = '\0';
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
35 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
36
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
37 int cutItemToInt( char * in,char sep,int num )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
38 {
32813
c4edf25471a1 Reduce buffer to reasonable size.
ib
parents: 32812
diff changeset
39 char tmp[64];
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 26458
diff changeset
40 cutItem( in,tmp,sep,num );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
41 return atoi( tmp );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
42 }