projects
/
manu
/
suphp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Import upstream 0.7.1
[manu/suphp.git]
/
src
/
CommandLine.cpp
diff --git
a/src/CommandLine.cpp
b/src/CommandLine.cpp
index
b718dc4
..
602d773
100644
(file)
--- a/
src/CommandLine.cpp
+++ b/
src/CommandLine.cpp
@@
-37,20
+37,23
@@
int suPHP::CommandLine::count() const {
std::string suPHP::CommandLine::getArgument(int pos) const
throw (OutOfRangeException) {
std::string suPHP::CommandLine::getArgument(int pos) const
throw (OutOfRangeException) {
+ if (pos >= this->arguments.size() || pos < 0) {
+ throw OutOfRangeException("Index out of range", __FILE__, __LINE__);
+ }
try {
try {
-
return this->arguments.at(pos)
;
+
return this->arguments[pos]
;
} catch (std::out_of_range& e) {
} catch (std::out_of_range& e) {
- throw OutOfRangeException("Index out of range", __FILE__, __LINE__);
+
throw OutOfRangeException("Index out of range", __FILE__, __LINE__);
}
}
void suPHP::CommandLine::setArgument(int pos, std::string arg) {
if (pos >= this->arguments.size()) {
}
}
void suPHP::CommandLine::setArgument(int pos, std::string arg) {
if (pos >= this->arguments.size()) {
- for (int i=0; i<(this->arguments.size() - pos); i++) {
- this->arguments.push_back(std::string(""));
- }
+
for (int i=0; i<(this->arguments.size() - pos); i++) {
+
this->arguments.push_back(std::string(""));
+
}
}
}
- this->arguments
.at(pos)
= arg;
+ this->arguments
[pos]
= arg;
}
void suPHP::CommandLine::putArgument(std::string arg) {
}
void suPHP::CommandLine::putArgument(std::string arg) {
@@
-59,10
+62,13
@@
void suPHP::CommandLine::putArgument(std::string arg) {
std::string& suPHP::CommandLine::operator[](int index)
throw (OutOfRangeException) {
std::string& suPHP::CommandLine::operator[](int index)
throw (OutOfRangeException) {
+ if (index >= this->arguments.size() || index < 0) {
+ throw OutOfRangeException("Index out of range", __FILE__, __LINE__);
+ }
try {
try {
-
return this->arguments.at(index)
;
+
return this->arguments[index]
;
} catch (std::out_of_range& ex) {
} catch (std::out_of_range& ex) {
- throw OutOfRangeException("Index out of range", __FILE__, __LINE__);
+
throw OutOfRangeException("Index out of range", __FILE__, __LINE__);
}
}
}
}