aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authors_nakamoto <s_nakamoto@1a98c847-1fd6-4fd8-948a-caf3550aa51b>2010-02-28 15:00:32 +0000
committers_nakamoto <s_nakamoto@1a98c847-1fd6-4fd8-948a-caf3550aa51b>2010-02-28 15:00:32 +0000
commit9a3358220449e75966bb188f2dc49310107b676d (patch)
tree1c69128fbaf46487b4cb554fe941f243d9ff32e6
parent8a46ed83cc65707fab87f93ab59e9a611dd02a06 (diff)
fix unsafe string handling in wxGetTranslation
-rw-r--r--makefile.vc18
-rw-r--r--serialize.h2
-rw-r--r--util.cpp8
3 files changed, 14 insertions, 14 deletions
diff --git a/makefile.vc b/makefile.vc
index 41f13522a0..9f821771e7 100644
--- a/makefile.vc
+++ b/makefile.vc
@@ -36,7 +36,7 @@ all: bitcoin.exe
.cpp{obj}.obj:
- cl $(CFLAGS) /Fo$@ %s
+ cl $(CFLAGS) /Fo$@ %s
obj\util.obj: $(HEADERS)
@@ -59,10 +59,10 @@ obj\ui.obj: $(HEADERS)
obj\uibase.obj: $(HEADERS)
obj\sha.obj: sha.cpp sha.h
- cl $(CFLAGS) /O2 /Fo$@ %s
+ cl $(CFLAGS) /O2 /Fo$@ %s
obj\ui.res: ui.rc rc/bitcoin.ico rc/check.ico rc/send16.bmp rc/send16mask.bmp rc/send16masknoshadow.bmp rc/send20.bmp rc/send20mask.bmp rc/addressbook16.bmp rc/addressbook16mask.bmp rc/addressbook20.bmp rc/addressbook20mask.bmp
- rc $(INCLUDEPATHS) $(WXDEFS) /Fo$@ %s
+ rc $(INCLUDEPATHS) $(WXDEFS) /Fo$@ %s
OBJS= \
obj\util.obj \
@@ -75,11 +75,11 @@ OBJS= \
obj\init.obj
bitcoin.exe: $(OBJS) obj\ui.obj obj\uibase.obj obj\sha.obj obj\ui.res
- link /nologo /DEBUG /SUBSYSTEM:WINDOWS /OUT:$@ $(LIBPATHS) $** $(LIBS)
+ link /nologo /DEBUG /SUBSYSTEM:WINDOWS /OUT:$@ $(LIBPATHS) $** $(LIBS)
.cpp{obj\nogui}.obj:
- cl $(CFLAGS) /DwxUSE_GUI=0 /Fo$@ %s
+ cl $(CFLAGS) /DwxUSE_GUI=0 /Fo$@ %s
obj\nogui\util.obj: $(HEADERS)
@@ -98,10 +98,10 @@ obj\nogui\rpc.obj: $(HEADERS)
obj\nogui\init.obj: $(HEADERS)
bitcoind.exe: $(OBJS:obj\=obj\nogui\) obj\sha.obj obj\ui.res
- link /nologo /DEBUG /OUT:$@ $(LIBPATHS) $** $(LIBS)
+ link /nologo /DEBUG /OUT:$@ $(LIBPATHS) $** $(LIBS)
clean:
- -del /Q obj\*
- -del *.ilk
- -del *.pdb
+ -del /Q obj\*
+ -del *.ilk
+ -del *.pdb
diff --git a/serialize.h b/serialize.h
index 5399c23d02..77dfa95bb9 100644
--- a/serialize.h
+++ b/serialize.h
@@ -20,7 +20,7 @@ class CDataStream;
class CAutoFile;
static const int VERSION = 207;
-static const char* pszSubVer = ".0";
+static const char* pszSubVer = ".1";
diff --git a/util.cpp b/util.cpp
index d90cdc48f9..09de89b10f 100644
--- a/util.cpp
+++ b/util.cpp
@@ -445,17 +445,17 @@ const char* wxGetTranslation(const char* pszEnglish)
return (*mi).second;
// wxWidgets translation
- const char* pszTranslated = wxGetTranslation(wxString(pszEnglish, wxConvUTF8)).utf8_str();
+ wxString strTranslated = wxGetTranslation(wxString(pszEnglish, wxConvUTF8));
// We don't cache unknown strings because caller might be passing in a
// dynamic string and we would keep allocating memory for each variation.
- if (strcmp(pszEnglish, pszTranslated) == 0)
+ if (strcmp(pszEnglish, strTranslated.utf8_str()) == 0)
return pszEnglish;
// Add to cache, memory doesn't need to be freed. We only cache because
// we must pass back a pointer to permanently allocated memory.
- char* pszCached = new char[strlen(pszTranslated)+1];
- strcpy(pszCached, pszTranslated);
+ char* pszCached = new char[strlen(strTranslated.utf8_str())+1];
+ strcpy(pszCached, strTranslated.utf8_str());
mapCache[pszEnglish] = pszCached;
return pszCached;
}