summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPixel <pixel@nobis-crew.org>2011-11-25 23:51:38 -0800
committerPixel <pixel@nobis-crew.org>2011-11-25 23:51:38 -0800
commit5bfc157171563809b78a00ad74b0e7a9690a17f0 (patch)
treeed84043bcb5629805536f49ee6f12bd4ef64614f
parent871ee4db27295b212bfdbc03550ed81f1f2e8b12 (diff)
Fixing a few bugs and warnings.
-rw-r--r--includes/BString.h4
-rw-r--r--includes/SimpleMustache.h4
-rw-r--r--src/SimpleMustache.cc5
3 files changed, 9 insertions, 4 deletions
diff --git a/includes/BString.h b/includes/BString.h
index 568a460..d8487d0 100644
--- a/includes/BString.h
+++ b/includes/BString.h
@@ -95,8 +95,8 @@ class String : private std::string {
bool operator>=(const String & v) const { return compare(v) >= 0; }
bool operator>=(const char * v) const { return compare(v) >= 0; }
- const char & operator[](size_t i) const { if (i < 0) i = strlen() + i; return at(i); }
- char & operator[](size_t i) { if (i < 0) i = strlen() + i; return at(i); }
+ const char & operator[](ssize_t i) const { if (i < 0) i = strlen() + i; return at(i); }
+ char & operator[](ssize_t i) { if (i < 0) i = strlen() + i; return at(i); }
};
};
diff --git a/includes/SimpleMustache.h b/includes/SimpleMustache.h
index d98b5eb..5b9dc3d 100644
--- a/includes/SimpleMustache.h
+++ b/includes/SimpleMustache.h
@@ -32,11 +32,13 @@ class SimpleMustache {
empty();
m_type = STRING;
m_str = str;
+ return *this;
}
Context & operator=(bool b) {
empty();
m_type = BOOLSEC;
m_bool = b;
+ return *this;
}
private:
enum ContextType {
@@ -48,7 +50,7 @@ class SimpleMustache {
} m_type;
Context(ContextType type) : m_type(type), m_root(false) { }
Context(Context & c) { Assert(false); }
- Context & operator=(Context & c) { Assert(false); }
+ Context & operator=(Context & c) { Assert(false); return *this; }
String m_str;
bool m_bool;
typedef std::map<String, Context *> SubContext;
diff --git a/src/SimpleMustache.cc b/src/SimpleMustache.cc
index c7cbee4..e87d08d 100644
--- a/src/SimpleMustache.cc
+++ b/src/SimpleMustache.cc
@@ -353,7 +353,7 @@ Balau::SimpleMustache::Fragments::iterator Balau::SimpleMustache::render_r(IO<Ha
return end;
for (cur = begin; cur != end; cur++) {
Fragment * fr = *cur;
- if(fr->type == Fragment::STRING);
+ if(fr->type == Fragment::STRING)
h->write(fr->str);
}
return end;
@@ -408,6 +408,9 @@ Balau::SimpleMustache::Fragments::iterator Balau::SimpleMustache::render_r(IO<Ha
case Fragment::INVERTED:
cur = render_r(h, NULL, fr->str, ++cur, sCtx->find(fr->str) != sCtx->end(), -1);
break;
+ default:
+ Assert(false);
+ break;
}
}
}