Closed tperezr closed 2 days ago
Buenas! cómo va?
Podrías subir un archivo con los logs de valgrind? Porque asi como lo planteas no termino de ver el posible problema, pero si viene por manejo de punteros fuera de las 3 líneas que posteas es imposible que lo vea.
Saludos.-
Buenas, encontre el problema. Me faltaba agregar al final de la variable path_pseudocodigo el final de la cadena.
int pseudocodigo_len = buffer->size - offset;
char *path_pseudocodigo = malloc(pseudocodigo_len);
memcpy(path_pseudocodigo, buffer->stream + offset, pseudocodigo_len);
path_pseudocodigo[pseudocodigo_len] = '\0';
//Leo el path y el archivo, guardando el contenido en la lista de instrucciones
char *absolute_path = string_from_format("%s%s%s", memoria_config->path_instrucciones, SEPARATOR_PATH, path_pseudocodigo);
log_debug(memoria_logger, "Leyendo instrucciones de: %s", absolute_path);
hilo_paquete->instrucciones = leer_archivo_por_linea(absolute_path, memoria_logger);
Gracias
¡Buenas! Cuidado que están reservando una cierta cantidad de bytes:
char *path_pseudocodigo = malloc(pseudocodigo_len);
Y luego están accediendo una posición por afuera de ese array:
path_pseudocodigo[pseudocodigo_len] = '\0';
Por ejemplo, si pseudocodigo_len
vale 4, están reservando 4 bytes y luego accediendo a la 5ta posición (ya que el indexado de arrays arranca en 0).
Esto en Valgrind probablemente lo vean como un invalid write of size 1.
Saludos
Hola, Si, justo estaba viendo eso, que me esta tirando ese error/warning Valgrind.
Gracias por la aclaracion!
🖋️ Descripción
Hola, buenas noches! Estoy teniendo un problema medio raro. Estoy probando el modulo de memoria con la herramienta
Valgrind
. Cuando recibo un proceso o hilo a ejecutar, a veces, me formatea mal el string con la funcion de la commonsstring_from_format
con el previo logueo de informacion, en este caso la conexion de kernel. (agrego una porcion minima de codigo)Me tira muchos warnings
Valgrind
a la hora de usarlog_xxxx
pero no entiendo porque me afectaria a la funcionstring_from_format
.Gracias!
PD: Este error solo me sucedio (hasta ahora) ejecutando el modulo con
Valgrind
📚 Búsqueda en documentación/foros
No response
📄 Código relevante
🐛 Cómo reproducir el error
No response
💻 Logs
ERROR
OK
📝 Normas del foro