Ejemplo n.º 1
0
int
exec_commands(const char cmdline[], FileView *view, CmdInputType type)
{
	int save_msg = 0;
	char **cmds = break_cmdline(cmdline, type == CIT_MENU_COMMAND);
	char **cmd = cmds;

	while(*cmd != NULL)
	{
		const int ret = exec_command(*cmd, view, type);
		if(ret != 0)
		{
			save_msg = (ret < 0) ? -1 : 1;
		}

		free(*cmd++);
	}
	free(cmds);

	return save_msg;
}
Ejemplo n.º 2
0
Archivo: filecmd.c Proyecto: badcodes/c
int process_line(const TCHAR* appname,const TCHAR* line) {
    static TCHAR** argv_l = NULL;
    static int argc_l = 0;
    if(argv_l) {
        while(argc_l-->0)
            free(argv_l[argc_l]);
    }
    else {
       argv_l = (TCHAR**)malloc(MAX_ARGC*sizeof(TCHAR*));
    }
    argc_l = 1;
    argv_l[0] = _tcsdup(appname);
    argc_l = break_cmdline(argv_l+1,line,MAX_ARGC);
    if(argc_l>0) {
        argc_l++;
        DEBUG_CODE_BEGIN
            printarg(TEXT("process_line"),argc_l,argv_l);
        DEBUG_CODE_END
        zcmd_process(argc_l,argv_l);
        return 1;
    }
    return 1;
}