* tipo_leer_raw retocada.
* Algunas cosa en GUI que no recuerdo
if (fread(®, sizeof(EMUFS_IDX), 1, f_idx) != 1) continue;
count++;
/* TODO : Verificar errores :-D */
- tmp = realloc(tmp, count);
+ tmp = realloc(tmp, count*sizeof(EMUFS_REG_ID));
tmp[count-1] = reg.id_reg;
}
fclose(f_idx);
if (emu->tam_reg < emu->tam_bloque) {
/* Aca estoy en el caso de que 1 registro entra en 1 solo bloque */
block = emufs_idx_buscar_registro(emu,ID);
- if ( block == EMUFS_NOT_FOUND ){
+ if ( block == EMUFS_NOT_FOUND ) {
return NULL;
}
if ((bloque = emufs_tipo3_leer_bloque(emu, block, &err)) == NULL) {
if ( block == EMUFS_NOT_FOUND ){
return NULL;
}
- cant_bloques = emu->tam_reg / emu->tam_bloque + 1;
+ cant_bloques = emu->tam_reg / (emu->tam_bloque - sizeof(EMUFS_REG_ID))+1;
*size = emu->tam_bloque*cant_bloques + cant_bloques*2 - sizeof(EMUFS_REG_ID)*(cant_bloques-1);
bloque = (char *)malloc(*size);
cur = bloque;
*pos = 0;
/* El bloque 0 va completo */
+ err = 0;
if ((tmp = emufs_tipo3_leer_bloque(emu, block, &err)) == NULL) {
/* Oops! ... un bloque no existe, todo mal! */
free(bloque);
/* En resto de los bloques no pongo el ID porque ya esta en el primero */
for(i=1; i<cant_bloques; i++) {
+ err = 0;
if ((tmp = emufs_tipo3_leer_bloque(emu, block+i, &err)) == NULL) {
/* Oops! ... un bloque no existe, todo mal! */
free(bloque);
if (filename != NULL) {
document = xmlReadFile(filename, "ISO-8859-1",0);
if (document == NULL) {
+ free(tmp);
+ lst_articulos = NULL;
return NULL;
}
{
if (l == NULL) l = lst_articulos;
if (l == NULL) return 1;
+ t_Reg_Articulo *del;
emufs_destruir(l->fp);
- /* TODO : Liberar lista */
+ while (l->primero) {
+ del = l->primero;
+ l->primero = l->primero->sig;
+ free(del);
+ }
free(l);
lst_articulos = NULL;
if (filename != NULL) {
document = xmlReadFile(filename, "ISO-8859-1",0);
if (document == NULL) {
+ free(tmp);
+ lst_facturas = NULL;
return NULL;
}
mvwhline(menu_win, 2, 1, ACS_HLINE, COLS-3);
mvwaddch(menu_win, 2, COLS-3, ACS_RTEE);
wattron(menu_win, COLOR_PAIR(COLOR_RED));
- mvwaddstr(menu_win, 1, 1, "Menu Articulos");
+ mvwaddstr(menu_win, 1, 1, "Menu Estadisticas");
wattroff(menu_win, COLOR_PAIR(COLOR_RED));
post_menu(menu);
wrefresh(menu_win);
} else {
if (strcmp(item_name(cur), opciones[0]) == 0) {
unpost_menu(menu);
- fprintf(stderr, "Muestro\n");
ver_estadisticas( art_get_lst()->fp );
box(menu_win, 0, 0);
post_menu(menu);
char s[40];
int i=3;
- fprintf(stderr, "....! (%p)\n", fp->leer_estadisticas);
stats = fp->leer_estadisticas(fp);
- fprintf(stderr, "Vamos que pasamos!\n");
win = newwin(LINES-4, COLS-2, 2, 1);