summaryrefslogtreecommitdiffstats
path: root/input
diff options
context:
space:
mode:
authoralbeu <albeu@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-02-20 14:45:18 +0000
committeralbeu <albeu@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-02-20 14:45:18 +0000
commit8b88d6cbe1749496acb3dc9801067b1efcd563d4 (patch)
tree87b48a13917e297d22f98709603537fbd441a106 /input
parentac29aba0122063ab95f3ca134660566b1f1f8beb (diff)
downloadmpv-8b88d6cbe1749496acb3dc9801067b1efcd563d4.tar.bz2
mpv-8b88d6cbe1749496acb3dc9801067b1efcd563d4.tar.xz
Added comments support in input.conf (comments lines with #)
And fixed a possible bug git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4764 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'input')
-rw-r--r--input/input.c29
1 files changed, 28 insertions, 1 deletions
diff --git a/input/input.c b/input/input.c
index 913ca5e434..c98023365e 100644
--- a/input/input.c
+++ b/input/input.c
@@ -555,6 +555,9 @@ mp_input_read_keys(int time,int paused) {
n++;
}
+ if(num_key_fd == 0)
+ return NULL;
+
if(time >= 0 ) {
tv.tv_sec=time/1000;
tv.tv_usec = (time%1000)*1000;
@@ -701,6 +704,9 @@ mp_input_read_cmds(int time) {
n++;
}
+ if(num_cmd_fd == 0)
+ return NULL;
+
if(time >= 0) {
tv.tv_sec=time/1000;
tv.tv_usec = (time%1000)*1000;
@@ -885,7 +891,7 @@ mp_input_free_binds(mp_cmd_bind_t* binds) {
static int
mp_input_parse_config(char *file) {
int fd;
- int bs = 0,r,eof = 0;
+ int bs = 0,r,eof = 0,comments = 0;
char *iter,*end;
char buffer[BS_MAX];
int n_binds = 0, keys[MP_MAX_KEY_DOWN+1] = { 0 };
@@ -927,6 +933,23 @@ mp_input_parse_config(char *file) {
iter = buffer;
+ if(comments) {
+ for( ; iter[0] != '\0' && iter[0] != '\n' ; iter++)
+ /* NOTHING */;
+ if(iter[0] == '\0') { // Buffer was full of comment
+ bs = 0;
+ continue;
+ }
+ iter++;
+ r = strlen(iter);
+ if(r)
+ memmove(buffer,iter,r+1);
+ bs = r+1;
+ if(iter[0] != '#')
+ comments = 0;
+ continue;
+ }
+
// Find the wanted key
if(keys[0] == 0) {
// Jump beginnig space
@@ -936,6 +959,10 @@ mp_input_parse_config(char *file) {
bs = 0;
continue;
}
+ if(iter[0] == '#') { // Comments
+ comments = 1;
+ continue;
+ }
// Find the end of the key code name
for(end = iter; end[0] != '\0' && strchr(SPACE_CHAR,end[0]) == NULL ; end++)
/*NOTHING */;