##// END OF EJS Templates
Se corrigió bug de funcion file2buffer. Faltaba '\0' al final de la cadena.
imanay -
r77:78
parent child
Show More
@@ -56,7 +56,7
56 56
57 57 typedef struct control_module_parameters cmp;
58 58
59
59 cmp parameters;
60 60 /*
61 61 * Zona de declaracion de cabeceras.
62 62 */
@@ -79,7 +79,7
79 79
80 80 int servSocket;
81 81 int clntSocket;
82 cmp parameters;
82
83 83
84 84 char *rx_buffer = (char *) malloc(TAM_BUFFER);
85 85 char *tx_buffer = (char *) malloc(TAM_BUFFER);
@@ -230,10 +230,7
230 230 tx_data = "OK";
231 231 }
232 232 else if(strcmp(cmd,"CHGB") == 0){
233 //cambia_apuntamiento(rx_data);
234 printf("%s\n",rx_data);
235 //cambia_apuntamiento(rx_data);
236 cambia_apuntamiento("1");
233 cambia_apuntamiento(rx_data);
237 234 tx_data = (char*)malloc(3);
238 235 tx_data = "OK";
239 236
@@ -265,6 +262,8
265 262 strcat(tx_buffer,tx_data);
266 263 strcat(tx_buffer,":");
267 264 strcat(tx_buffer,crc);
265 strcat(tx_buffer,":");
266 strcat(tx_buffer,"quit");
268 267
269 268 }
270 269
@@ -325,7 +324,7
325 324 // la longitud del archivo
326 325 fread(buffer_temporal, sizeof(char), num_bytes, Archivo_Fd);
327 326
328 char *puntero= strstr(buffer_temporal,".abs"); // Se procede a eliminar la cabecera del archivo
327 char *puntero= strstr(buffer_temporal,".ab1"); // Se procede a eliminar la cabecera del archivo
329 328 puntero= puntero + 12;
330 329
331 330 buff_experimento = (char *) malloc(7*(num_filas-3)); // num_bytes_fila*(num_filas-3);
@@ -356,7 +355,7
356 355
357 356 int base= 7*puntero; // base= cantidad_bytes del dato x puntero
358 357 // cantidad de bytes es el numero de bytes que
359 printf("%s\n%i\n",puntero_char,puntero); // contiene cada dato, para este caso es 7
358 printf("%s\n",puntero_char); // contiene cada dato, para este caso es 7
360 359 // porque es 6 bits de datos + 1 bit del cambio
361 360 // de linea.
362 361 char valor_char;
@@ -366,8 +365,7
366 365
367 366 int offset; // Defino offset para el desplazamiento a traves
368 367 for(offset=0;offset<6;offset++){ // de cada dato que se obtiene del "buff_experimento"
369 printf("tp1\n");
370 printf("%i\n",base+offset);
368
371 369 valor_char= buff_experimento[base+offset]; // Obtengo el dato
372 370
373 371 if (valor_char == '0'){ // Obtengo el número acumulado segun sea un cero o un uno
@@ -378,11 +376,8
378 376 acumulado_unos= acumulado_unos + (1 << desplazamiento[offset]);
379 377 }
380 378 }
381 printf("tp2\n");
382 379 pio_out(pioc, maskc_out, acumulado_unos, 1);
383 printf("tp3\n");
384 380 pio_out(pioc, maskc_out, acumulado_ceros, 0);
385 printf("tp4\n");
386 381
387 382 return 1;
388 383
@@ -401,6 +396,7
401 396 FILE *fd;
402 397 fd=fopen(filename,"w");
403 398 fprintf(fd,"%s\n","Verificacion");
399 fprintf(fd,"%s",parameters.ID);
404 400 fprintf(fd,"%s\n","------------");
405 401 cnt=0;
406 402 do
@@ -437,15 +433,18
437 433
438 434 fclose(fd);
439 435
440 return 7*atoi(numero_muestras) + 26 + 1; //incluye eof
436 return 7*atoi(numero_muestras) + 26 + 4 + 1; //incluye eof
441 437 }
442 438
443 439 char* File2buffer(char *filename, int n){
444 440 FILE *fd;
445 441 char* tx_data = (char *)malloc(n);
446 442 fd = fopen(filename,"r");
447 fread(tx_data, 1, n, fd);
443 fread(tx_data, 1, n-1, fd);
448 444 fclose(fd);
445 tx_data = tx_data + n - 1;
446 *tx_data = '\0';
447 tx_data = tx_data - n + 1;
449 448 return tx_data;
450 449 }
451 450
General Comments 0
You need to be logged in to leave comments. Login now