summaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'main.c')
-rw-r--r--main.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/main.c b/main.c
index cc4289c..fe26675 100644
--- a/main.c
+++ b/main.c
@@ -61,7 +61,7 @@ int get_addr(const char **cmd){
addr2 = addr1;
addr1 = num;
break;
- case ',': /* range 1 */
+ case ',': /* range 1 */ /* refactor to set addr2 = addr1 */
fprintf(stderr, " >>>> comma: addr1: %d addr2: %d pos: %d\n", addr1, addr2, pos);
comma = 1;
if (addr1 ==-1)
@@ -112,7 +112,9 @@ int get_addr(const char **cmd){
case '+':
fprintf(stderr, " >>>> +/-: addr1: %d addr2: %d pos: %d\n", addr1, addr2, pos);
addr2 = addr1;
- addr1 = pos;
+ /* the assignment below breaks stuff like 1++++ */
+ if (addr1 < 0)
+ addr1 = pos;
c ++;
c = skip_blank(&c);
if (! isdigit(*c)){