summaryrefslogtreecommitdiff
path: root/sci-biology/mothur/files/mothur-1.27.0-overflows.patch
diff options
context:
space:
mode:
Diffstat (limited to 'sci-biology/mothur/files/mothur-1.27.0-overflows.patch')
-rw-r--r--sci-biology/mothur/files/mothur-1.27.0-overflows.patch93
1 files changed, 93 insertions, 0 deletions
diff --git a/sci-biology/mothur/files/mothur-1.27.0-overflows.patch b/sci-biology/mothur/files/mothur-1.27.0-overflows.patch
new file mode 100644
index 00000000000..0b612cf7b52
--- /dev/null
+++ b/sci-biology/mothur/files/mothur-1.27.0-overflows.patch
@@ -0,0 +1,93 @@
+ chimerauchimecommand.cpp | 2 +-
+ clearcutcommand.cpp | 32 ++++++++++++++++----------------
+ 2 files changed, 17 insertions(+), 17 deletions(-)
+
+diff --git a/chimerauchimecommand.cpp b/chimerauchimecommand.cpp
+index bd31c19..2070840 100644
+--- a/chimerauchimecommand.cpp
++++ b/chimerauchimecommand.cpp
+@@ -1264,7 +1264,7 @@ int ChimeraUchimeCommand::driver(string outputFName, string filename, string acc
+ }
+
+ if (ucl) {
+- char* tempucl = new char[5];
++ char* tempucl = new char[6];
+ strcpy(tempucl, "--ucl");
+ cPara.push_back(tempucl);
+ }
+diff --git a/clearcutcommand.cpp b/clearcutcommand.cpp
+index 6a0eb25..2e8164e 100644
+--- a/clearcutcommand.cpp
++++ b/clearcutcommand.cpp
+@@ -269,35 +269,35 @@ int ClearcutCommand::execute() {
+
+ vector<char*> cPara;
+
+- char* tempClearcut = new char[8];
++ char* tempClearcut = new char[16];
+ strcpy(tempClearcut, "clearcut");
+ cPara.push_back(tempClearcut);
+
+ //you gave us a distance matrix
+- if (phylipfile != "") { char* temp = new char[10]; strcpy(temp, "--distance"); cPara.push_back(temp); }
++ if (phylipfile != "") { char* temp = new char[16]; strcpy(temp, "--distance"); cPara.push_back(temp); }
+
+ //you gave us a fastafile
+- if (fastafile != "") { char* temp = new char[11]; strcpy(temp, "--alignment"); cPara.push_back(temp); }
++ if (fastafile != "") { char* temp = new char[16]; strcpy(temp, "--alignment"); cPara.push_back(temp); }
+
+- if (version) { char* temp = new char[9]; strcpy(temp, "--version"); cPara.push_back(temp); }
+- if (verbose) { char* temp = new char[9]; strcpy(temp, "--verbose"); cPara.push_back(temp); }
+- if (quiet) { char* temp = new char[7]; strcpy(temp, "--quiet"); cPara.push_back(temp); }
++ if (version) { char* temp = new char[16]; strcpy(temp, "--version"); cPara.push_back(temp); }
++ if (verbose) { char* temp = new char[16]; strcpy(temp, "--verbose"); cPara.push_back(temp); }
++ if (quiet) { char* temp = new char[16]; strcpy(temp, "--quiet"); cPara.push_back(temp); }
+ if (seed != "*") {
+ string tempSeed = "--seed=" + seed;
+ char* temp = new char[tempSeed.length()];
+ strcpy(temp, tempSeed.c_str());
+ cPara.push_back(temp);
+ }
+- if (norandom) { char* temp = new char[10]; strcpy(temp, "--norandom"); cPara.push_back(temp); }
+- if (shuffle) { char* temp = new char[9]; strcpy(temp, "--shuffle"); cPara.push_back(temp); }
+- if (neighbor) { char* temp = new char[10]; strcpy(temp, "--neighbor"); cPara.push_back(temp); }
++ if (norandom) { char* temp = new char[16]; strcpy(temp, "--norandom"); cPara.push_back(temp); }
++ if (shuffle) { char* temp = new char[16]; strcpy(temp, "--shuffle"); cPara.push_back(temp); }
++ if (neighbor) { char* temp = new char[16]; strcpy(temp, "--neighbor"); cPara.push_back(temp); }
+
+ string tempIn = "--in=" + inputFile;
+ char* tempI = new char[tempIn.length()];
+ strcpy(tempI, tempIn.c_str());
+ cPara.push_back(tempI);
+
+- if (stdoutWanted) { char* temp = new char[8]; strcpy(temp, "--stdout"); cPara.push_back(temp); }
++ if (stdoutWanted) { char* temp = new char[16]; strcpy(temp, "--stdout"); cPara.push_back(temp); }
+ else{
+ string tempOut = "--out=" + outputName;
+
+@@ -306,10 +306,10 @@ int ClearcutCommand::execute() {
+ cPara.push_back(temp);
+ }
+
+- if (DNA) { char* temp = new char[5]; strcpy(temp, "--DNA"); cPara.push_back(temp); }
+- if (protein) { char* temp = new char[9]; strcpy(temp, "--protein"); cPara.push_back(temp); }
+- if (jukes) { char* temp = new char[7]; strcpy(temp, "--jukes"); cPara.push_back(temp); }
+- if (kimura) { char* temp = new char[8]; strcpy(temp, "--kimura"); cPara.push_back(temp); }
++ if (DNA) { char* temp = new char[16]; strcpy(temp, "--DNA"); cPara.push_back(temp); }
++ if (protein) { char* temp = new char[16]; strcpy(temp, "--protein"); cPara.push_back(temp); }
++ if (jukes) { char* temp = new char[16]; strcpy(temp, "--jukes"); cPara.push_back(temp); }
++ if (kimura) { char* temp = new char[16]; strcpy(temp, "--kimura"); cPara.push_back(temp); }
+ if (matrixout != "") {
+ string tempMatrix = "--matrixout=" + outputDir + matrixout;
+ char* temp = new char[tempMatrix.length()];
+@@ -326,8 +326,8 @@ int ClearcutCommand::execute() {
+ cPara.push_back(temp);
+ }
+
+- if (expblen) { char* temp = new char[9]; strcpy(temp, "--expblen"); cPara.push_back(temp); }
+- if (expdist) { char* temp = new char[9]; strcpy(temp, "--expdist"); cPara.push_back(temp); }
++ if (expblen) { char* temp = new char[16]; strcpy(temp, "--expblen"); cPara.push_back(temp); }
++ if (expdist) { char* temp = new char[16]; strcpy(temp, "--expdist"); cPara.push_back(temp); }
+
+ char** clearcutParameters;
+ clearcutParameters = new char*[cPara.size()];