… | |
… | |
307 | geom_flags |= WidthValue|HeightValue|XValue|YValue; |
307 | geom_flags |= WidthValue|HeightValue|XValue|YValue; |
308 | } |
308 | } |
309 | |
309 | |
310 | if (ops) |
310 | if (ops) |
311 | { |
311 | { |
312 | while (*ops) |
312 | char **arr = rxvt_strsplit (':', ops + 1); |
313 | { |
|
|
314 | while (*ops == ':' || isspace(*ops)) ++ops; |
|
|
315 | |
313 | |
|
|
314 | for (int i = 0; arr[i]; i++) |
|
|
315 | { |
316 | # define CHECK_GEOM_OPS(op_str) (strncasecmp (ops, (op_str), sizeof (op_str) - 1) == 0) |
316 | # define CHECK_GEOM_OPS(op_str) (strcasecmp (arr[i], (op_str)) == 0) |
317 | if (CHECK_GEOM_OPS ("tile")) |
317 | if (CHECK_GEOM_OPS ("tile")) |
318 | { |
318 | { |
319 | w = h = noScale; |
319 | w = h = noScale; |
320 | geom_flags |= WidthValue|HeightValue; |
320 | geom_flags |= WidthValue|HeightValue; |
321 | } |
321 | } |
… | |
… | |
355 | new_flags |= rootAlign; |
355 | new_flags |= rootAlign; |
356 | w = h = noScale; |
356 | w = h = noScale; |
357 | geom_flags |= WidthValue|HeightValue; |
357 | geom_flags |= WidthValue|HeightValue; |
358 | } |
358 | } |
359 | # undef CHECK_GEOM_OPS |
359 | # undef CHECK_GEOM_OPS |
360 | |
|
|
361 | while (*ops != ':' && *ops != '\0') ++ops; |
|
|
362 | } /* done parsing ops */ |
360 | } /* done parsing ops */ |
|
|
361 | |
|
|
362 | rxvt_free_strsplit (arr); |
363 | } |
363 | } |
364 | |
364 | |
365 | if (check_set_scale_value (geom_flags, WidthValue, h_scale, w)) changed = true; |
365 | if (check_set_scale_value (geom_flags, WidthValue, h_scale, w)) changed = true; |
366 | if (check_set_scale_value (geom_flags, HeightValue, v_scale, h)) changed = true; |
366 | if (check_set_scale_value (geom_flags, HeightValue, v_scale, h)) changed = true; |
367 | if (check_set_align_value (geom_flags, XValue, h_align, x)) changed = true; |
367 | if (check_set_align_value (geom_flags, XValue, h_align, x)) changed = true; |