projects
/
fms.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
version 0.3.22
[fms.git]
/
src
/
charsetconverter.cpp
diff --git
a/src/charsetconverter.cpp
b/src/charsetconverter.cpp
index
3026207
..
373f53d
100644
(file)
--- a/
src/charsetconverter.cpp
+++ b/
src/charsetconverter.cpp
@@
-47,9
+47,14
@@
const bool CharsetConverter::Convert(const std::string &input, std::string &outp
{
\r
if(m_iconv!=(iconv_t)-1)
\r
{
\r
{
\r
if(m_iconv!=(iconv_t)-1)
\r
{
\r
+ if(input.size()==0)
\r
+ {
\r
+ return true;
\r
+ }
\r
+
\r
std::vector<char> invec(input.begin(),input.end());
\r
std::vector<char> outvec(invec.size()*4,0);
\r
std::vector<char> invec(input.begin(),input.end());
\r
std::vector<char> outvec(invec.size()*4,0);
\r
-#if defined(_WIN32) || defined(__APPLE__) || defined(__DARWIN__)
\r
+#if defined(_WIN32) || defined(__
FreeBSD__)//|| defined(__
APPLE__) || defined(__DARWIN__)
\r
const char *inptr=&invec[0];
\r
#else
\r
char *inptr=&invec[0];
\r
const char *inptr=&invec[0];
\r
#else
\r
char *inptr=&invec[0];
\r
@@
-57,6
+62,7
@@
const bool CharsetConverter::Convert(const std::string &input, std::string &outp
char *outptr=&outvec[0];
\r
size_t insize=invec.size();
\r
size_t outsize=outvec.size();
\r
char *outptr=&outvec[0];
\r
size_t insize=invec.size();
\r
size_t outsize=outvec.size();
\r
+
\r
size_t rval=0;
\r
\r
rval=iconv(m_iconv,&inptr,&insize,&outptr,&outsize);
\r
size_t rval=0;
\r
\r
rval=iconv(m_iconv,&inptr,&insize,&outptr,&outsize);
\r