Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1139 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Bug dans Insure++ ???

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Bug dans Insure++ ???

n°1378206
julien_54
Posté le 31-05-2006 à 15:44:58  profilanswer
 

Bonjour,

 

je viens de mettre une journée pour essayer de corriger une erreur dans un programme qui, en fait, n'en était pas une...

 

Le problème vient d'un bug (?) dans le programme Insure++ (qui permet de tester en profondeur (allocation mémoire, pointeurs, free, ...) un programme).

 

J'ai pu l'isoler , et j'aimerais savoir ce que vous en pensez :

 
Code :


On est d'accord ca affiche bien -1462, mais Insure me dit :

 


[test.c:11] **READ_UNINIT_MEM(read)**
 
>>   printf("%d\n",result2[159]);
 

 


  Reading uninitialized memory: result2[159]
 

 


  In block: 0x0804b008 thru 0x0804b409 (1026 bytes)
 
                  result2, allocated at test.c, 9
 
                          calloc()  (interface)
 
                            main()  test.c, 9
 

 


  Stack trace where the error occurred:
 
                            main()  test.c, 11


 :pt1cable:  :sweat:  :heink:  :pfff:

 

Pour les amateurs de Insure++, est-ce un bug connu, ou moi qui n'ai pas vu quelque chose ...

  

mood
Publicité
Posté le 31-05-2006 à 15:44:58  profilanswer
 

n°1378245
Taz
bisounours-codeur
Posté le 31-05-2006 à 16:36:43  profilanswer
 

montre nous la déclaration et l'initialisation de result2

n°1378327
julien_54
Posté le 31-05-2006 à 17:57:18  profilanswer
 

Taz a écrit :

montre nous la déclaration et l'initialisation de result2


 
oups j'avais pas vu que le code ne s'affiche pas  :whistle:  
 

Code :
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main(void)
  4. {
  5.   short *result2=NULL;
  6.   int window_size=512;
  7.   result2=(short *)calloc(window_size+1,sizeof(short));
  8.   result2[159]=-4162;
  9.   printf("%d\n",result2[159]);
  10.   free(result2);
  11.   return 0;
  12. }

n°1378376
skelter
Posté le 31-05-2006 à 19:14:45  profilanswer
 

et genre un simple

Code :
  1. short s = result2[159];


 
ca fait pareil ?

Message cité 1 fois
Message édité par skelter le 31-05-2006 à 19:14:55
n°1378601
julien_54
Posté le 01-06-2006 à 09:53:44  profilanswer
 

skelter a écrit :

et genre un simple

Code :
  1. short s = result2[159];


 
ca fait pareil ?


 
Et bien je croyais que non, mais après avoir réessayé pour être sûr de ne pas dire de connerie, et bien si ca fait pareil ... étrange non ?  
Aurais-je eu la malchance de tomber sur un code interne de Insure ?

n°1378830
julien_54
Posté le 01-06-2006 à 13:54:32  profilanswer
 

En fait j'ai testé une autre façon encore plus simple :
 
mettre -1462 dans un short genre :
 
short s=-1462;
printf("%d\n",s);
 
ca fait l'erreur donc ca doit sûrement être la valeur que met insure dans tout short non initialisé pour vérifier lors de l'utilisation de la variable si sa valeur est différente ou pas ...
je vois que ça ...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Bug dans Insure++ ???

 

Sujets relatifs
[JS/DOM] Bug sous IE, l'image se s'affiche pas ! [RESOLU]Bug incomprehensible pour un gugus comme moi :P
[résolu]Bug de combobox[PHP] Bug étrange avec strftime (résolu)
[CSS] Bug FireFox ou bug de mon site ? Positionnement de DIV[PHP] Bug PHP ?!? -> Pro demandé !
c quoi ce Bug??[Bug Firefox]renvoyer un mess d'erreur
Bug incompréhensible sur IE (CSS - Mise en page)Bug d'affichage IE5.0 sur les listes.
Plus de sujets relatifs à : Bug dans Insure++ ???


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR