summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorPaul Baltescu <pauldb89@gmail.com>2013-05-23 20:42:26 +0100
committerPaul Baltescu <pauldb89@gmail.com>2013-05-23 20:42:26 +0100
commit4ab38fecf0f49c5132a5d5ea748d03e0acfa36c2 (patch)
tree8e250d99f4a381eae865a15b6eb43b0f77b68479 /utils
parent35d2c095ba6a912272f2fcc8322ece4213ada82b (diff)
parent1d96c9c9c521edfca1d10e4d8c5064f79fda3ec5 (diff)
Merge branch 'master' of github.com:pauldb89/cdec
Diffstat (limited to 'utils')
-rw-r--r--utils/filelib.h2
-rw-r--r--utils/stringlib.h10
2 files changed, 11 insertions, 1 deletions
diff --git a/utils/filelib.h b/utils/filelib.h
index bb6e7415..b9ea3940 100644
--- a/utils/filelib.h
+++ b/utils/filelib.h
@@ -27,7 +27,7 @@ struct BaseFile {
}
bool is_null() const { return !ps_; }
operator bool() const {
- return ps_;
+ return ps_.get();
}
S* stream() { return ps_.get(); }
S* operator->() { return ps_.get(); } // compat with old ReadFile * -> new Readfile. remove?
diff --git a/utils/stringlib.h b/utils/stringlib.h
index ff5dc89d..1bb533d8 100644
--- a/utils/stringlib.h
+++ b/utils/stringlib.h
@@ -268,6 +268,16 @@ inline unsigned int UTF8Len(unsigned char x) {
else return 0;
}
+inline unsigned int UTF8StringLen(const std::string& x) {
+ unsigned pos = 0;
+ int len = 0;
+ while(pos < x.size()) {
+ ++len;
+ pos += UTF8Len(x[pos]);
+ }
+ return len;
+}
+
std::string md5(const std::string& in);
#endif