]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/base64.h
Don't define __STRICT_ANSI__, we should build both with and without it.
[wxWidgets.git] / include / wx / base64.h
index 709fb1dd1e22c40fe4089ebc26b17918be78b0fe..96c6dd80ef58220e7432857652c2937fb12525dd 100644 (file)
@@ -3,7 +3,6 @@
 // Purpose:     declaration of BASE64 encoding/decoding functionality
 // Author:      Charles Reimers, Vadim Zeitlin
 // Created:     2007-06-18
-// RCS-ID:      $Id$
 // Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
@@ -89,6 +88,17 @@ wxBase64Decode(void *dst, size_t dstLen,
                wxBase64DecodeMode mode = wxBase64DecodeMode_Strict,
                size_t *posErr = NULL);
 
+inline size_t
+wxBase64Decode(void *dst, size_t dstLen,
+               const wxString& src,
+               wxBase64DecodeMode mode = wxBase64DecodeMode_Strict,
+               size_t *posErr = NULL)
+{
+    // don't use str.length() here as the ASCII buffer is shorter than it for
+    // strings with embedded NULs
+    return wxBase64Decode(dst, dstLen, src.ToAscii(), wxNO_LEN, mode, posErr);
+}
+
 // decode the contents of the given string; the returned buffer is empty if an
 // error occurs during decoding
 WXDLLIMPEXP_BASE wxMemoryBuffer
@@ -96,6 +106,16 @@ wxBase64Decode(const char *src, size_t srcLen = wxNO_LEN,
                wxBase64DecodeMode mode = wxBase64DecodeMode_Strict,
                size_t *posErr = NULL);
 
+inline wxMemoryBuffer
+wxBase64Decode(const wxString& src,
+               wxBase64DecodeMode mode = wxBase64DecodeMode_Strict,
+               size_t *posErr = NULL)
+{
+    // don't use str.length() here as the ASCII buffer is shorter than it for
+    // strings with embedded NULs
+    return wxBase64Decode(src.ToAscii(), wxNO_LEN, mode, posErr);
+}
+
 #endif // wxUSE_BASE64
 
 #endif // _WX_BASE64_H_