VirtualBox

Changeset 40651 in vbox for trunk/src/VBox/Runtime/r3


Ignore:
Timestamp:
Mar 26, 2012 4:29:58 PM (13 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
77083
Message:

Runtime/r3/posix, RDP/client: Solaris 11 iconv change. Avoid referencing xpg5_iconv symbol by circumventing pragma redefine_extname.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/r3/posix/utf8-posix.cpp

    r36555 r40651  
    3939#include <errno.h>
    4040#include <locale.h>
    41 #include <iconv.h>
     41
     42#if defined(RT_OS_SOLARIS)
     43# if !defined(_XPG6)
     44#  define VBOX_XPG6_TMP_DEF
     45#  define _XPG6
     46# endif
     47# if defined(__USE_LEGACY_PROTOTYPES__)
     48#  define VBOX_LEGACY_PROTO_TMP_DEF
     49#  undef __USE_LEGACY_PROTOTYPES__
     50# endif
     51#endif /* RT_OS_SOLARIS */
     52
     53# include <iconv.h>
     54
     55#if defined(RT_OS_SOLARIS)
     56# if defined(VBOX_XPG6_TMP_DEF)
     57#  undef _XPG6
     58#  undef VBOX_XPG6_TMP_DEF
     59# endif
     60# if defined(VBOX_LEGACY_PROTO_TMP_DEF)
     61#  define __USE_LEGACY_PROTOTYPES__
     62#  undef VBOX_LEGACY_PROTO_TMP_DEF
     63# endif
     64#endif /* RT_OS_SOLARIS */
     65
    4266#include <wctype.h>
    4367
     
    169193            const void *pvInputLeft = pvInput;
    170194            void       *pvOutputLeft = pvOutput;
    171 #if defined(RT_OS_LINUX) || (defined(RT_OS_DARWIN) && defined(_DARWIN_FEATURE_UNIX_CONFORMANCE)) /* there are different opinions about the constness of the input buffer. */
     195#if defined(RT_OS_LINUX) || (defined(RT_OS_SOLARIS) && !defined(VBOX_SOLARIS_11_LEGACY_ICONV)) || (defined(RT_OS_DARWIN) && defined(_DARWIN_FEATURE_UNIX_CONFORMANCE)) /* there are different opinions about the constness of the input buffer. */
    172196            if (iconv(hIconv, (char **)&pvInputLeft, &cbInLeft, (char **)&pvOutputLeft, &cbOutLeft) != (size_t)-1)
    173197#else
     
    295319            const void *pvInputLeft = pvInput;
    296320            void       *pvOutputLeft = pvOutput;
    297 #if defined(RT_OS_LINUX) || (defined(RT_OS_DARWIN) && defined(_DARWIN_FEATURE_UNIX_CONFORMANCE)) /* there are different opinions about the constness of the input buffer. */
     321#if defined(RT_OS_LINUX) || (defined(RT_OS_SOLARIS) && !defined(VBOX_SOLARIS_11_LEGACY_ICONV)) || (defined(RT_OS_DARWIN) && defined(_DARWIN_FEATURE_UNIX_CONFORMANCE)) /* there are different opinions about the constness of the input buffer. */
    298322            if (iconv(icHandle, (char **)&pvInputLeft, &cbInLeft, (char **)&pvOutputLeft, &cbOutLeft) != (size_t)-1)
    299323#else
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette