Difference between revisions of "Team 5 Bugs Report"

From CDOT Wiki
Jump to: navigation, search
(* == Week 4-5 Log (Sept. 25/13):)
(* == Week 4-5 Log (Sept. 25/13):)
Line 16: Line 16:
  
  
== * == Week 4-5 Log (Sept. 25/13): ==
+
Bug Report (Tai Nguyen/25/09/2013)
 
 
 
- display function completed, no bugs found
 
- display function completed, no bugs found
 
- edit function problem
 
- edit function problem
  
 
+
  '''Objective: move cursor left and right with arrow keys (LEFT, RIGHT)'''
 
+
'''Issue: when typing, cannot insert correct values and cannot use left and right keys'''
== Bug log
+
'''Solution: Using arrays to store the current positions causes issues with the console input.. not sure why.. but when removed array - currPos and used normal variable int to store the row and column current position it worked...'''
==
 
  - objective: move cursor left and right with arrow keys (LEFT, RIGHT)
 
  
 
   code attempt:  
 
   code attempt:  
 
  do{
 
 
  console.getPosition(currPos[0], currPos[1]); //currPos[0] - rows
 
 
  console >> key;
 
 
 
 
 
   do{       
 
   do{       
 
   console.getPosition(currPos[0], currPos[1]);
 
   console.getPosition(currPos[0], currPos[1]);
 
   console >> key;
 
   console >> key;
 
 
   if(key >= ' ' && key <= '~'){
 
   if(key >= ' ' && key <= '~'){
 
   console << key;
 
   console << key;
Line 48: Line 36:
 
   }  
 
   }  
 
  }while(key != ESCAPE);
 
  }while(key != ESCAPE);
issue: when typing, cannot insert correct values and cannot use left and right keys
 
 
 
  However if re-written as, it performs as desired:
 
  However if re-written as, it performs as desired:
 
  do{       
 
  do{       
Line 63: Line 49:
 
   }  
 
   }  
 
  }while(key != ESCAPE);
 
  }while(key != ESCAPE);
 
SOLVED BUG: using arrays to store the current positions causes issues with the console input.. not sure why.. but when removed array - currPos and used normal variable int to store the row and column current position it worked...
 

Revision as of 23:14, 28 September 2013

  • On local machine (Windows), while compiling with GCC,
   ncursor.h : No such file or directory

(GNU library not existing on Windows platform by default)

  • String Overlapping during strncpy() causing memory corruption.
     if ((int)strlen(str)>fieldLen){
       char * strOut;
       //strOut = new char[fieldLen + 1];
       strncpy(strOut, str, fieldLen);
       strOut[fieldLen]='\0';
       
       //delete [] strOut;
      }

( Commented being the fix)


Bug Report (Tai Nguyen/25/09/2013) - display function completed, no bugs found - edit function problem

Objective: move cursor left and right with arrow keys (LEFT, RIGHT)
Issue: when typing, cannot insert correct values and cannot use left and right keys

Solution: Using arrays to store the current positions causes issues with the console input.. not sure why.. but when removed array - currPos and used normal variable int to store the row and column current position it worked...

 code attempt: 
 do{      
  console.getPosition(currPos[0], currPos[1]);
  console >> key;
 if(key >= ' ' && key <= '~'){
  console << key;
 }else if(key == LEFT){
  console.setPosition(currPos[0], currPos[1] - 1);
 }else if(key == RIGHT){
  console.setPosition(currPos[0], currPos[1] + 1);
 } 
}while(key != ESCAPE);
However if re-written as, it performs as desired:
do{      
 console >> key;
 if(key >= ' ' && key <= '~'){
  console << key;
 }else if(key == LEFT){
  console.getPosition(currPos[0], currPos[1]);
  console.setPosition(currPos[0], currPos[1] - 1);
 }else if(key == RIGHT){
  console.getPosition(currPos[0], currPos[1]);
  console.setPosition(currPos[0], currPos[1] + 1);
 } 
}while(key != ESCAPE);