equal
deleted
inserted
replaced
1778 |
1778 |
1779 /*************************/ |
1779 /*************************/ |
1780 /* Tracking Functions... */ |
1780 /* Tracking Functions... */ |
1781 /*************************/ |
1781 /*************************/ |
1782 |
1782 |
1783 #define MAX_LINE_LENGTH 1000 |
1783 #define MAX_LINE_LENGTH 1024 |
1784 |
1784 |
1785 tracking_t *GetNewTracking(FILE* in_file) { |
1785 tracking_t *GetNewTracking(FILE* in_file) { |
1786 tracking_t* new_env = new tracking_t; |
1786 tracking_t* new_env = new tracking_t; |
1787 new_env->eof = 0; |
1787 new_env->eof = 0; |
1788 new_env->lineNumber = 0; |
1788 new_env->lineNumber = 0; |
1819 return 0; |
1819 return 0; |
1820 current_tracking->eof = true; |
1820 current_tracking->eof = true; |
1821 return 0; |
1821 return 0; |
1822 } |
1822 } |
1823 |
1823 |
1824 current_tracking->lineNumber++; |
|
1825 current_tracking->lineLength = strlen(current_tracking->buffer); |
1824 current_tracking->lineLength = strlen(current_tracking->buffer); |
|
1825 |
|
1826 /* only increment line number if the buffer was big enough to read the whole line! */ |
|
1827 char last_char = current_tracking->buffer[current_tracking->lineLength - 1]; |
|
1828 if (('\n' == last_char) || ('\r' == last_char)) // '\r' ---> CR, '\n' ---> LF |
|
1829 current_tracking->lineNumber++; |
1826 } |
1830 } |
1827 |
1831 |
1828 b[0] = current_tracking->buffer[current_tracking->currentChar]; |
1832 b[0] = current_tracking->buffer[current_tracking->currentChar]; |
1829 if (b[0] == ' ' || b[0] == '\t') |
1833 if (b[0] == ' ' || b[0] == '\t') |
1830 current_tracking->currentTokenStart++; |
1834 current_tracking->currentTokenStart++; |