summaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
authorKatolaZ <katolaz@freaknet.org>2018-04-20 10:40:00 +0100
committerKatolaZ <katolaz@freaknet.org>2018-04-20 10:40:00 +0100
commitcae118e406151da7dc1008045b9908ced76526d9 (patch)
treefe6b0bebcc91c34d79442e95c482017cee4d91f7 /main.c
parent8f936bc6c89163e3984ac619612c0ce76a51a74e (diff)
various fixes in indexing
Diffstat (limited to 'main.c')
-rw-r--r--main.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/main.c b/main.c
index 0599575..4fb2175 100644
--- a/main.c
+++ b/main.c
@@ -58,7 +58,9 @@ int get_addr(const char **cmd){
break;
case ',':
comma = 1;
- if (addr1 < addr2){
+ if (addr1 ==-1)
+ addr2 = 1, addr1=num;
+ else if (addr1 < addr2){
*cmd = c;
return -1;
}
@@ -82,6 +84,10 @@ int get_addr(const char **cmd){
return 0;
}
if (addr2 == -1){
+ if (comma){
+ addr2 = addr1;
+ return 2;
+ }
addr2 = pos;
return 1;
}
@@ -103,9 +109,9 @@ void main_loop(){
ret = get_addr((const char **) &cmd);
- printf(">>> *** pos: %d address: %d ***\n", pos, ret);
+ fprintf(stderr,">>> *** pos: %d address: %d ***\n", pos, ret);
if (ret) {
- printf(">>> *** addr1: %d, addr2= %d***\n", addr1, addr2);
+ fprintf(stderr, ">>> *** addr1: %d, addr2= %d***\n", addr1, addr2);
}
switch(cmd[0]){
@@ -157,8 +163,8 @@ void main_loop(){
print_lineno();
break;
default:
- printf(">>> **** unknown command: '%c'****\n", cmd[0])
- ;
+ fprintf(stderr, ">>> **** unknown command: '%c'****\n", cmd[0]);
+ printf("?\n");
}
}
}