X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/eb1c009fe67cf1eb1c1081151f839082bc8efd6e..98a4474bbd08bef0e4ecad30ae663295632b8a59:/emufs_gui/gui.c diff --git a/emufs_gui/gui.c b/emufs_gui/gui.c index 7bebab5..ec90147 100644 --- a/emufs_gui/gui.c +++ b/emufs_gui/gui.c @@ -22,7 +22,7 @@ void menu_articulos(); WINDOW *msg_box(WINDOW *win, int w, int h, const char *format, ...); void msg_box_free(WINDOW *padre, WINDOW *win); -typedef enum {PARAM_OK, SHOW_HELP, TIPO_NO_DEFINIDO, TIPO_INVALIDO} t_Param; +typedef enum {PARAM_OK, SHOW_HELP, TIPO_NO_DEFINIDO, TIPO_INVALIDO, BLOQUE_NO_DEFINIDO} t_Param; /* Verifica Argumentos */ t_Param param_ok(int argc, char *argv[]) @@ -33,9 +33,11 @@ t_Param param_ok(int argc, char *argv[]) if (strcmp(argv[i]+strlen(argv[i])-3, "xml") == 0) { /* Luego del archivo XML debe seguir el tipo */ - if ((i+2) 3)) return TIPO_INVALIDO; + if (((n == 1) || (n == 3)) && ((i+2)>=argc)) + return BLOQUE_NO_DEFINIDO; } else { /* Ops, no hay mas parametros */ return TIPO_NO_DEFINIDO; @@ -64,7 +66,10 @@ int main(int argc, char *argv[]) print_help(argv[0]); return 0; case TIPO_NO_DEFINIDO: - printf("Falta parámetro requerido. Luego del nombre del archivo debe especificar el tipo de archivo\n"); + printf("Falta parámetro requerido.\nLuego del nombre del archivo debe especificar el tipo de archivo\n"); + return 1; + case BLOQUE_NO_DEFINIDO: + printf("Falta parámetro requerido.\nLuego del tipo de archivo debe especificar el tamaño del bloque a utilizar\n"); return 1; case TIPO_INVALIDO: printf("Tipo de archivo no valido. Los valores posibles para el tipo de archivo son:\n"); @@ -127,11 +132,11 @@ int main(int argc, char *argv[]) wrefresh(stdscr); dialog = msg_box(stdscr, COLS, LINES, "Generando archivos ..."); - if (argc == 3) { - art_cargar(argv[1], atoi(argv[2])); + if (argc == 4) { + art_cargar(argv[1], atoi(argv[2]), atoi(argv[3])); fact_cargar(argv[1]); } else - art_cargar(NULL, -1); + art_cargar(NULL, -1, -1); msg_box_free(stdscr, dialog);