Преглед на файлове

Fixed attribute buffer allocation for overruns and unnaturally large attributes

git-svn-id: https://svn.microneil.com/svn/CodeDweller/trunk@111 d34b734f-a00e-4b39-a726-e4eeb87269ab
wx
madscientist преди 8 години
родител
ревизия
36b03c855e
променени са 1 файла, в които са добавени 6 реда и са изтрити 4 реда
  1. 6
    4
      configuration.cpp

+ 6
- 4
configuration.cpp Целия файл

@@ -905,8 +905,9 @@ bool ConfigurationElement::interpret(ConfigurationData& Data) {
) { // then translate the content!
// Create the Content buffer...

int BfrSize = Stopdex - Startdex; // How big a buffer do we need?
char Bfr[BfrSize]; // Make one that size.
int BfrSize = Stopdex - Startdex +1; // How big a buffer do we need?
vector<char> heapBfr(BfrSize,0); // Make one that size.
char *Bfr = &heabBfr[0];

copyDataCountLines(Bfr, Data, Startdex, Stopdex); // Get our data and ignore our lines.

@@ -1097,8 +1098,9 @@ bool ConfigurationAttribute::interpret(ConfigurationData& Data) {

// Read our data.

int BfrSize = Stopdex - Startdex; // How big a buffer do we need?
char Bfr[BfrSize]; // Make one that size.
int BfrSize = Stopdex - Startdex +1; // How big a buffer do we need?
vector<char> heapBfr(BfrSize,0); // Make one that size.
char *Bfr = &heabBfr[0];

NewLines += copyDataCountLines(Bfr, Data, Startdex, Stopdex); // Get our data and count our lines.


Loading…
Отказ
Запис