X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/ecddfc3161e6285cdd95ec7237d1e8e562a594a1..549a07c528dc9f77fa70cd331fb0250026781425:/emufs_gui/facturas.c diff --git a/emufs_gui/facturas.c b/emufs_gui/facturas.c index fed7556..76c042f 100644 --- a/emufs_gui/facturas.c +++ b/emufs_gui/facturas.c @@ -11,10 +11,12 @@ static t_LstFacturas *lst_facturas; static void *procesar_guardar_factura(t_Factura *f, t_LstFacturas *lst, EMUFS_REG_SIZE *size); static int procesar_leer_factura(t_Factura *dst, void *src, EMUFS_REG_SIZE size, t_LstFacturas *lst); +#ifdef TP_PRIMER_ENTREGA /* Manejo de la lista en memoria */ static t_Reg_Factura *crear_nodo_factura(EMUFS_REG_ID reg, EMUFS_REG_ID texto, unsigned int num); static int agregar_nodo_factura(t_LstFacturas *lst, t_Reg_Factura *nodo); int eliminar_nodo_factura(t_LstFacturas *lst, t_Reg_Factura *nodo); +#endif /* Funciones para carga desde el XML */ static t_Item *leer_items(xmlNode *, int *cant, int size); @@ -38,6 +40,7 @@ char *xml_get_prop(xmlNode *node, char *nombre) return s; } +#ifdef TP_PRIMER_ENTREGA int eliminar_nodo_factura(t_LstFacturas *lst, t_Reg_Factura *nodo) { if (nodo == NULL) return 0; @@ -84,6 +87,7 @@ int agregar_nodo_factura(t_LstFacturas *lst, t_Reg_Factura *nodo) } return 1; } +#endif /*TP_PRIMER_ENTREGA*/ t_Item *leer_items(xmlNode *node, int *cant, int size) { @@ -416,7 +420,8 @@ void fact_eliminar(char *s) k.i_clave = fact->reg_nota; lst_facturas->fp_texto->borrar_registro(lst_facturas->fp_texto, k); - free(fact->items); + if (fact->items) free(fact->items); + if (fact->nota) free(fact->nota); free(fact); } @@ -424,7 +429,6 @@ void fact_modificar(char *s) { WINDOW *win, *items, *nota, *subnota; t_Form *form, *form_nota; - t_Reg_Factura *nodo; t_Factura *fact; EMUFS_REG_SIZE size; EMUFS_REG_ID id, id_texto; @@ -533,7 +537,7 @@ void fact_agregar(char *s) t_Item *its = NULL; t_Factura fact; EMUFS_REG_SIZE size; - EMUFS_REG_ID id, id_texto; + EMUFS_REG_ID id_texto; int y_actual, cant, error; char *entrada; @@ -645,7 +649,6 @@ void fact_agregar(char *s) if (entrada) { error = 0; lst_facturas->fp->grabar_registro(lst_facturas->fp, entrada, size, &error); - agregar_nodo_factura(lst_facturas, crear_nodo_factura(id, id_texto, fact.numero)); free(entrada); }