File build-checks.diff of Package openbabel

--- src/forcefield.cpp
+++ src/forcefield.cpp
@@ -1240,7 +1240,7 @@ namespace OpenBabel
   
   bool OBForceField::SystematicRotorSearchNextConformer(unsigned int geomSteps) 
   {
-    char _logbuf[100];
+    char _logbuf[BUFF_SIZE];
     
     if (_current_conformer >=  _mol.NumConformers()) { // done
       // Select conformer with lowest energy
@@ -1355,7 +1355,7 @@ namespace OpenBabel
 
   bool OBForceField::RandomRotorSearchNextConformer(unsigned int geomSteps) 
   {
-    char _logbuf[100];
+    char _logbuf[BUFF_SIZE];
     
     if (_current_conformer >=  _mol.NumConformers()) { // done
       // Select conformer with lowest energy
@@ -1888,7 +1888,7 @@ namespace OpenBabel
  
     // output result of triangle smoothing
     IF_OBFF_LOGLVL_LOW {
-      char _logbuf[100];
+      char _logbuf[BUFF_SIZE];
 
       OBFFLog("RANDOM DISTANCE MATRIX BETWEEN LIMITS\n\n");
       for (i=0; i<N; i++) {
@@ -1912,7 +1912,7 @@ namespace OpenBabel
     
     // output metric matrix
     IF_OBFF_LOGLVL_LOW {
-      char _logbuf[100];
+      char _logbuf[BUFF_SIZE];
 
       OBFFLog("METRIC MATRIX\n\n");
       for (i=0; i<N; i++) {
@@ -2403,7 +2403,7 @@ namespace OpenBabel
     OBAtom *atom = new OBAtom;
     vector3 grad;
     double e_n1, e_n2;
-    char _logbuf[100];
+    char _logbuf[BUFF_SIZE];
     
     atom->SetVector(9.0, 9.0, 0.0);
     e_n1 = atom->x() * atom->x() + 2 * (atom->y() * atom->y());
@@ -2447,7 +2447,7 @@ namespace OpenBabel
     double e_n1, e_n2;
     double g2g2, g1g1, g2g1;
     bool firststep;
-    char _logbuf[100];
+    char _logbuf[BUFF_SIZE];
 
     firststep = true;
     atom->SetVector(9.0, 9.0, 0.0);
--- src/forcefields/forcefieldmmff94.cpp
+++ src/forcefields/forcefieldmmff94.cpp
@@ -3853,7 +3853,7 @@ namespace OpenBabel
     vector<int> types;
     vector<double> fcharges, pcharges;
     vector<double> bond_lengths;
-    char buffer[150], _logbuf[100];
+    char buffer[150], _logbuf[BUFF_SIZE];
     bool molfound, atomfound, bondfound, fchgfound, pchgfound;
     double etot, ebond, eangle, eoop, estbn, etor, evdw, eeq;
     double termcount; //1=bond, 2=angle, 3=strbnd, 4=torsion, 5=oop
--- src/formats/chemkinformat.cpp
+++ src/formats/chemkinformat.cpp
@@ -627,8 +627,10 @@ bool ChemKinFormat::ReadReactionQualifierLines(istream& ifs, OBReaction* pReact)
     {
       //not "END". Has an even number of tokens.
       //3-body efficiencies
-      for(int i=0;i<toks.size()-1;++i)//also incremented in body to retrieve id,val pairs
-        pRD->SetEfficiency(toks[i++], atof(toks[i].c_str()));
+      for(int i=0;i<toks.size()-1;) {
+        pRD->SetEfficiency(toks[i], atof(toks[i+1].c_str()));
+        i += 2;
+      }
     }
   }
   return ifs!=NULL;
openSUSE Build Service is sponsored by