inp_fix_ternary_operator_str(), abstraction, new function inp_search_closing_paren()

This commit is contained in:
rlar 2013-10-03 11:44:11 +02:00
parent 2c74e02d42
commit 3f52f88244
1 changed files with 8 additions and 2 deletions

View File

@ -1872,8 +1872,8 @@ inp_fix_ternary_operator_str(char *line, bool all)
str_ptr = skip_ws(question + 1);
if (*str_ptr == '(') {
// find closing paren
char *inp_search_closing_paren1(char *str_ptr2) {
int count = 1;
str_ptr2 = str_ptr/* + 1*/;
// assert(*str_ptr2 == '(')
while (count != 0 && *str_ptr2 != '\0') {
str_ptr2++;
@ -1884,6 +1884,9 @@ inp_fix_ternary_operator_str(char *line, bool all)
}
if (count != 0)
str_ptr2 = NULL;
return str_ptr2;
}
str_ptr2 = inp_search_closing_paren1(str_ptr /* +1 */);
if (!str_ptr2) {
fprintf(stderr, "ERROR: problem parsing 'if' of ternary string %s!\n", line);
controlled_exit(EXIT_FAILURE);
@ -1911,10 +1914,10 @@ inp_fix_ternary_operator_str(char *line, bool all)
str_ptr = skip_ws(colon + 1);
/* ... : (else) */
if (*str_ptr == '(') {
char *inp_search_for_closing_paren2(char *str_ptr2) {
// find end paren ')'
bool found_paren = FALSE;
int count = 0;
str_ptr2 = str_ptr;
// assert(*str_ptr2 == '(')
while (*str_ptr2 != '\0') {
if (*str_ptr2 == '(') {
@ -1929,6 +1932,9 @@ inp_fix_ternary_operator_str(char *line, bool all)
}
if (found_paren && count != 0)
str_ptr2 = NULL;
return str_ptr2;
}
str_ptr2 = inp_search_for_closing_paren2(str_ptr);
if (!str_ptr2) {
fprintf(stderr, "ERROR: problem parsing ternary line %s!\n", line);
controlled_exit(EXIT_FAILURE);