Changeset 1569a9b in mainline for uspace/app


Ignore:
Timestamp:
2017-12-24T16:40:33Z (8 years ago)
Author:
GitHub <noreply@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
48fd597
Parents:
a1026da
git-author:
Jiří Zárevúcky <zarevucky.jiri@…> (2017-12-24 16:40:33)
git-committer:
GitHub <noreply@…> (2017-12-24 16:40:33)
Message:

The "not-so-obvious" error handling tweaks. (#9)

Some more changes to enable type-checking with errno_t. Some of the "fixes" here don't quite feel right, but a proper solution would be a more elaborate refactoring of the surrounding code.

Location:
uspace/app
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/bdsh/cmds/modules/cmp/cmp.c

    ra1026da r1569a9b  
    101101                    memcmp(buffer[0], buffer[1], offset[0]) != 0) {
    102102                        printf("Return 1\n");
    103                         rc = 1;
     103                        rc = EBUSY;
    104104                        goto end;
    105105                }
  • uspace/app/bdsh/cmds/modules/cp/cp.c

    ra1026da r1569a9b  
    266266
    267267                /* call copy_file and exit */
    268                 rc = (copy_file(src, dest_path, blen, vb) < 0);
     268                if (copy_file(src, dest_path, blen, vb) < 0) {
     269                        rc = EIO;
     270                }
    269271
    270272        } else if (src_type == TYPE_DIR) {
     
    434436        if (rc != EOK) {
    435437                printf("\nError copying %s: %s\n", src, str_error(rc));
    436                 return rc;
     438                return -1;
    437439        }
    438440
     
    442444        if (buff)
    443445                free(buff);
    444         return rc;
     446        if (rc != EOK) {
     447                return -1;
     448        } else {
     449                return 0;
     450        }
    445451}
    446452
     
    473479        int force = 0, interactive = 0;
    474480        int c, opt_ind;
    475         int64_t ret;
     481        int ret;
    476482
    477483        con = console_init(stdin, stdout);
  • uspace/app/bdsh/input.c

    ra1026da r1569a9b  
    7373       
    7474        char *cmd[WORD_MAX];
    75         int rc = 0;
     75        int rc = EOK;
    7676        tokenizer_t tok;
    7777        unsigned int i, pipe_count, processed_pipes;
     
    8282        if (usr->line == NULL) {
    8383                free(tokens_buf);
    84                 return CL_EFAIL;
     84                return EINVAL;
    8585        }
    8686
     
    198198        }
    199199
    200         rc = run_command(cmd, usr, &new_iostate);
     200        if (run_command(cmd, usr, &new_iostate) == 0) {
     201                rc = EOK;
     202        } else {
     203                rc = EINVAL;
     204        }
    201205       
    202206finit_with_files:
  • uspace/app/fontviewer/fontviewer.c

    ra1026da r1569a9b  
    149149        va_end(args);
    150150       
    151         if (ret <= 0)
    152                 return ret;
    153        
    154         drawctx_set_source(drawctx, source);
    155         drawctx_set_font(drawctx, font);
    156         drawctx_print(drawctx, str, x, y);
    157        
    158         free(str);
     151        if (ret >= 0) {
     152                drawctx_set_source(drawctx, source);
     153                drawctx_set_font(drawctx, font);
     154                drawctx_print(drawctx, str, x, y);
     155
     156                free(str);
     157        }
    159158       
    160159        return ret;
  • uspace/app/init/init.c

    ra1026da r1569a9b  
    208208                    path, retval);
    209209       
    210         return retval;
     210        return retval == 0 ? EOK : EPARTY;
    211211}
    212212
  • uspace/app/pkg/pkg.c

    ra1026da r1569a9b  
    9696        }
    9797
    98         return retval;
     98        return retval == 0 ? EOK : EPARTY;
    9999}
    100100
  • uspace/app/trace/ipcp.c

    ra1026da r1569a9b  
    281281                        if (oper->rv_type != V_VOID) {
    282282                                putchar(' ');
    283                                 val_print(retval, oper->rv_type);
     283                                val_print((sysarg_t) retval, oper->rv_type);
    284284                        }
    285285                       
  • uspace/app/trace/trace.c

    ra1026da r1569a9b  
    260260
    261261
    262 static void print_sc_retval(int retval, val_type_t val_type)
     262static void print_sc_retval(sysarg_t retval, val_type_t val_type)
    263263{
    264264        printf(" -> ");
     
    296296        IPC_SET_ARG5(call, 0);
    297297
    298         ipcp_call_out(phoneid, &call, sc_rc);
    299 }
    300 
    301 static void sc_ipc_call_async_slow(sysarg_t *sc_args, sysarg_t sc_rc)
     298        ipcp_call_out(phoneid, &call, 0);
     299}
     300
     301static void sc_ipc_call_async_slow(sysarg_t *sc_args, int sc_rc)
    302302{
    303303        ipc_call_t call;
    304304        int rc;
    305305
    306         if (sc_rc != (sysarg_t) EOK)
     306        if (sc_rc != EOK)
    307307                return;
    308308
     
    310310        rc = udebug_mem_read(sess, &call.args, sc_args[1], sizeof(call.args));
    311311
    312         if (rc >= 0) {
    313                 ipcp_call_out(sc_args[0], &call, sc_rc);
     312        if (rc == EOK) {
     313                ipcp_call_out(sc_args[0], &call, 0);
    314314        }
    315315}
     
    581581               
    582582                if (!console_get_event(console, &event))
    583                         return -1;
     583                        return EINVAL;
    584584               
    585585                if (event.type == CEV_KEY) {
Note: See TracChangeset for help on using the changeset viewer.