Permalink
Browse files

This commit was manufactured by cvs2svn to create tag 'MONO_0_30'.

svn path=/tags/MONO_0_30/mono/; revision=22714
  • Loading branch information...
2 parents 66280ca + 09de8b1 commit 34822afe22085dcdfa99db23ce024c95f39c5328 nobody committed Feb 2, 2004
Showing with 43 additions and 553 deletions.
  1. +0 −51 config.h.in
  2. +0 −246 doc/pending-classes.in
  3. +43 −10 mono/metadata/locales.c
  4. +0 −246 web/pending-classes.in
View
@@ -1,51 +0,0 @@
-/* config.h.in. Generated automatically from configure.in by autoheader 2.13. */
-
-/* Define if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-#undef HAVE_INET_PTON
-#undef HAVE_INET_ATON
-#undef HAVE_SOL_IP
-#undef HAVE_SOL_TCP
-#undef HAVE_IP_PKTINFO
-#undef HAVE_STRUCT_IP_MREQN
-#undef HAVE_PTHREAD
-#undef HAVE_PTHREAD_MUTEX_TIMEDLOCK
-#undef USE_MONO_MUTEX
-#undef HAVE_LARGE_FILE_SUPPORT
-#undef PLATFORM_WIN32
-#undef HAVE_NEW_ICONV
-#undef NAME_DEV_RANDOM
-#undef HAVE_CRYPT_RNG
-#undef HAVE_BOEHM_GC
-
-/* The number of bytes in a void *. */
-#undef SIZEOF_VOID_P
-
-/* Define if you have the inet_aton function. */
-#undef HAVE_INET_ATON
-
-/* Define if you have the inet_pton function. */
-#undef HAVE_INET_PTON
-
-/* Define if you have the <dlfcn.h> header file. */
-#undef HAVE_DLFCN_H
-
-/* Define if you have the <netdb.h> header file. */
-#undef HAVE_NETDB_H
-
-/* Define if you have the <sys/filio.h> header file. */
-#undef HAVE_SYS_FILIO_H
-
-/* Define if you have the <sys/sockio.h> header file. */
-#undef HAVE_SYS_SOCKIO_H
-
-/* Define if you have the <utime.h> header file. */
-#undef HAVE_UTIME_H
-
-/* Name of package */
-#undef PACKAGE
-
-/* Version number of package */
-#undef VERSION
-
View
@@ -1,246 +0,0 @@
-System.Object
-System.Exception
-System.ValueType
-System.Delegate
-System.MulticastDelegate
-System.Enum
-System.Activator
-System.ArgIterator
-System.__ComObject
-System.TypedReference
-System.Security.AllowPartiallyTrustedCallersAttribute
-System.Runtime.Serialization.Formatter
-System.Runtime.Serialization.FormatterConverter
-System.Runtime.Serialization.FormatterServices
-System.Runtime.Serialization.ObjectIDGenerator
-System.Runtime.Serialization.ObjectManager
-System.Reflection.ModuleResolveEventHandler
-System.Reflection.Pointer
-System.Globalization.CompareInfo
-System.Globalization.HebrewCalendar
-System.Globalization.HijriCalendar
-System.Globalization.JapaneseCalendar
-System.Globalization.KoreanCalendar
-System.Globalization.SortKey
-System.Globalization.StringInfo
-System.Globalization.TaiwanCalendar
-System.Globalization.TextElementEnumerator
-System.Globalization.TextInfo
-System.Globalization.ThaiBuddhistCalendar
-System.IO.IsolatedStorage.IsolatedStorageFile
-System.Reflection.Emit.MethodRental
-System.Runtime.CompilerServices.AccessedThroughPropertyAttribute
-System.Runtime.CompilerServices.CallConvCdecl
-System.Runtime.CompilerServices.CallConvStdcall
-System.Runtime.CompilerServices.CallConvThiscall
-System.Runtime.CompilerServices.CallConvFastcall
-System.Runtime.CompilerServices.CustomConstantAttribute
-System.Runtime.CompilerServices.DateTimeConstantAttribute
-System.Runtime.CompilerServices.DiscardableAttribute
-System.Runtime.CompilerServices.DecimalConstantAttribute
-System.Runtime.CompilerServices.CompilationRelaxationsAttribute
-System.Runtime.CompilerServices.CompilerGlobalScopeAttribute
-System.Runtime.CompilerServices.IDispatchConstantAttribute
-System.Runtime.CompilerServices.IsVolatile
-System.Runtime.CompilerServices.IUnknownConstantAttribute
-System.Runtime.CompilerServices.RequiredAttributeAttribute
-System.Runtime.InteropServices.ArrayWithOffset
-System.Runtime.InteropServices.DispIdAttribute
-System.Runtime.InteropServices.ClassInterfaceType
-System.Runtime.InteropServices.ClassInterfaceAttribute
-System.Runtime.InteropServices.ComVisibleAttribute
-System.Runtime.InteropServices.LCIDConversionAttribute
-System.Runtime.InteropServices.ComRegisterFunctionAttribute
-System.Runtime.InteropServices.ComUnregisterFunctionAttribute
-System.Runtime.InteropServices.ProgIdAttribute
-System.Runtime.InteropServices.ImportedFromTypeLibAttribute
-System.Runtime.InteropServices.IDispatchImplType
-System.Runtime.InteropServices.IDispatchImplAttribute
-System.Runtime.InteropServices.ComSourceInterfacesAttribute
-System.Runtime.InteropServices.ComConversionLossAttribute
-System.Runtime.InteropServices.TypeLibTypeFlags
-System.Runtime.InteropServices.TypeLibFuncFlags
-System.Runtime.InteropServices.TypeLibVarFlags
-System.Runtime.InteropServices.TypeLibTypeAttribute
-System.Runtime.InteropServices.TypeLibFuncAttribute
-System.Runtime.InteropServices.TypeLibVarAttribute
-System.Runtime.InteropServices.ComImportAttribute
-System.Runtime.InteropServices.PreserveSigAttribute
-System.Runtime.InteropServices.ComAliasNameAttribute
-System.Runtime.InteropServices.AutomationProxyAttribute
-System.Runtime.InteropServices.PrimaryInteropAssemblyAttribute
-System.Runtime.InteropServices.CoClassAttribute
-System.Runtime.InteropServices.ComEventInterfaceAttribute
-System.Runtime.InteropServices.COMException
-System.Runtime.InteropServices.ComMemberType
-System.Runtime.InteropServices.CurrencyWrapper
-System.Runtime.InteropServices.DispatchWrapper
-System.Runtime.InteropServices.ErrorWrapper
-System.Runtime.InteropServices.ExtensibleClassFactory
-System.Runtime.InteropServices.HandleRef
-System.Runtime.InteropServices.InvalidComObjectException
-System.Runtime.InteropServices.InvalidOleVariantTypeException
-System.Runtime.InteropServices.TypeLibImporterFlags
-System.Runtime.InteropServices.ExporterEventKind
-System.Runtime.InteropServices.ITypeLibExporterNotifySink
-System.Runtime.InteropServices.ITypeLibConverter
-System.Runtime.InteropServices.MarshalDirectiveException
-System.Runtime.InteropServices.ObjectCreationDelegate
-System.Runtime.InteropServices.RuntimeEnvironment
-System.Runtime.InteropServices.RegistrationServices
-System.Runtime.InteropServices.SafeArrayRankMismatchException
-System.Runtime.InteropServices.SafeArrayTypeMismatchException
-System.Runtime.InteropServices.SEHException
-System.Runtime.InteropServices.TypeLibConverter
-System.Runtime.InteropServices.BIND_OPTS
-System.Runtime.InteropServices.UCOMIBindCtx
-System.Runtime.InteropServices.UCOMIConnectionPointContainer
-System.Runtime.InteropServices.UCOMIConnectionPoint
-System.Runtime.InteropServices.UCOMIEnumMoniker
-System.Runtime.InteropServices.CONNECTDATA
-System.Runtime.InteropServices.UCOMIEnumConnections
-System.Runtime.InteropServices.UCOMIEnumConnectionPoints
-System.Runtime.InteropServices.UCOMIEnumString
-System.Runtime.InteropServices.UCOMIEnumVARIANT
-System.Runtime.InteropServices.FILETIME
-System.Runtime.InteropServices.UCOMIMoniker
-System.Runtime.InteropServices.UCOMIPersistFile
-System.Runtime.InteropServices.UCOMIRunningObjectTable
-System.Runtime.InteropServices.STATSTG
-System.Runtime.InteropServices.UCOMIStream
-System.Runtime.InteropServices.DESCKIND
-System.Runtime.InteropServices.BINDPTR
-System.Runtime.InteropServices.UCOMITypeComp
-System.Runtime.InteropServices.TYPEKIND
-System.Runtime.InteropServices.TYPEFLAGS
-System.Runtime.InteropServices.IMPLTYPEFLAGS
-System.Runtime.InteropServices.TYPEATTR
-System.Runtime.InteropServices.FUNCDESC
-System.Runtime.InteropServices.IDLFLAG
-System.Runtime.InteropServices.IDLDESC
-System.Runtime.InteropServices.PARAMFLAG
-System.Runtime.InteropServices.PARAMDESC
-System.Runtime.InteropServices.TYPEDESC
-System.Runtime.InteropServices.ELEMDESC
-System.Runtime.InteropServices.VARDESC
-System.Runtime.InteropServices.DISPPARAMS
-System.Runtime.InteropServices.EXCEPINFO
-System.Runtime.InteropServices.FUNCKIND
-System.Runtime.InteropServices.INVOKEKIND
-System.Runtime.InteropServices.CALLCONV
-System.Runtime.InteropServices.FUNCFLAGS
-System.Runtime.InteropServices.VARFLAGS
-System.Runtime.InteropServices.UCOMITypeInfo
-System.Runtime.InteropServices.SYSKIND
-System.Runtime.InteropServices.LIBFLAGS
-System.Runtime.InteropServices.TYPELIBATTR
-System.Runtime.InteropServices.UCOMITypeLib
-System.Runtime.InteropServices.UnknownWrapper
-System.Runtime.Remoting.IObjectHandle
-System.Runtime.Remoting.IRemotingTypeInfo
-System.Runtime.Remoting.IChannelInfo
-System.Runtime.Remoting.IEnvoyInfo
-System.Runtime.Remoting.RemotingConfiguration
-System.Runtime.Remoting.TypeEntry
-System.Runtime.Remoting.ActivatedClientTypeEntry
-System.Runtime.Remoting.ActivatedServiceTypeEntry
-System.Runtime.Remoting.WellKnownClientTypeEntry
-System.Runtime.Remoting.WellKnownServiceTypeEntry
-System.Runtime.Remoting.RemotingException
-System.Runtime.Remoting.ServerException
-System.Runtime.Remoting.RemotingTimeoutException
-System.Runtime.Remoting.RemotingServices
-System.Runtime.Remoting.InternalRemotingServices
-System.Runtime.Remoting.SoapServices
-System.Runtime.Remoting.Activation.UrlAttribute
-System.Runtime.Remoting.Messaging.IMessageSink
-System.Runtime.Remoting.Messaging.AsyncResult
-System.Runtime.Remoting.Messaging.CallContext
-System.Runtime.Remoting.Messaging.ILogicalThreadAffinative
-System.Runtime.Remoting.Messaging.InternalMessageWrapper
-System.Runtime.Remoting.Messaging.IMethodCallMessage
-System.Runtime.Remoting.Messaging.MethodCallMessageWrapper
-System.Runtime.Remoting.Messaging.HeaderHandler
-System.Runtime.Remoting.Messaging.IMessageCtrl
-System.Runtime.Remoting.Messaging.IRemotingFormatter
-System.Runtime.Remoting.Messaging.ReturnMessage
-System.Runtime.Remoting.Messaging.MethodCall
-System.Runtime.Remoting.Messaging.ConstructionCall
-System.Runtime.Remoting.Messaging.MethodResponse
-System.Runtime.Remoting.Messaging.ConstructionResponse
-System.Runtime.Remoting.Messaging.MethodReturnMessageWrapper
-System.Runtime.Remoting.Messaging.OneWayAttribute
-System.Runtime.Remoting.Messaging.MessageSurrogateFilter
-System.Runtime.Remoting.Messaging.RemotingSurrogateSelector
-System.Runtime.Remoting.Contexts.CrossContextDelegate
-System.Runtime.Remoting.Contexts.ContextProperty
-System.Runtime.Remoting.Contexts.IContextPropertyActivator
-System.Runtime.Remoting.Contexts.IContributeClientContextSink
-System.Runtime.Remoting.Contexts.IContributeDynamicSink
-System.Runtime.Remoting.Contexts.IContributeEnvoySink
-System.Runtime.Remoting.Contexts.IContributeObjectSink
-System.Runtime.Remoting.Contexts.IContributeServerContextSink
-System.Runtime.Serialization.Formatters.InternalRM
-System.Runtime.Serialization.Formatters.InternalST
-System.Runtime.Serialization.Formatters.SoapMessage
-System.Runtime.Serialization.Formatters.SoapFault
-System.Runtime.Serialization.Formatters.ServerFault
-System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-System.Security.Cryptography.CryptoConfig
-System.Security.Cryptography.KeyedHashAlgorithm
-System.Security.Cryptography.HMACSHA1
-System.Security.Cryptography.MACTripleDES
-System.Security.Cryptography.MaskGenerationMethod
-System.Security.Cryptography.PasswordDeriveBytes
-System.Security.Cryptography.PKCS1MaskGenerationMethod
-System.Security.Cryptography.RC2
-System.Security.Cryptography.RC2CryptoServiceProvider
-System.Security.Cryptography.RSACryptoServiceProvider
-System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter
-System.Security.Cryptography.RSAOAEPKeyExchangeFormatter
-System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter
-System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter
-System.Security.Cryptography.RSAPKCS1SignatureDeformatter
-System.Security.Cryptography.RSAPKCS1SignatureFormatter
-System.Security.Cryptography.SHA1Managed
-System.Security.Cryptography.TripleDES
-System.Security.Cryptography.TripleDESCryptoServiceProvider
-System.Security.Permissions.EnvironmentPermission
-System.Security.Permissions.FileDialogPermission
-System.Security.Permissions.IsolatedStorageFilePermission
-System.Security.Permissions.PrincipalPermissionAttribute
-System.Security.Permissions.SecurityPermissionAttribute
-System.Security.Permissions.PublisherIdentityPermissionAttribute
-System.Security.Permissions.PublisherIdentityPermission
-System.Security.Permissions.ReflectionPermission
-System.Security.Permissions.RegistryPermission
-System.Security.Permissions.PrincipalPermission
-System.Security.Permissions.SiteIdentityPermission
-System.Security.Permissions.StrongNameIdentityPermission
-System.Security.Permissions.StrongNamePublicKeyBlob
-System.Security.Permissions.UIPermission
-System.Security.Permissions.UrlIdentityPermission
-System.Security.Permissions.ZoneIdentityPermission
-System.Security.Policy.ApplicationDirectory
-System.Security.Policy.ApplicationDirectoryMembershipCondition
-System.Security.Policy.FirstMatchCodeGroup
-System.Security.Policy.Hash
-System.Security.Policy.HashMembershipCondition
-System.Security.Policy.NetCodeGroup
-System.Security.Policy.PermissionRequestEvidence
-System.Security.Policy.Publisher
-System.Security.Policy.PublisherMembershipCondition
-System.Security.Policy.Site
-System.Security.Policy.SiteMembershipCondition
-System.Security.Policy.StrongName
-System.Security.Policy.StrongNameMembershipCondition
-System.Security.Policy.UnionCodeGroup
-System.Security.Policy.Url
-System.Security.Policy.UrlMembershipCondition
-System.Security.Policy.Zone
-System.Security.Policy.ZoneMembershipCondition
-System.Security.Principal.WindowsIdentity
-System.Security.Principal.WindowsImpersonationContext
-System.Security.Principal.WindowsPrincipal
-System.Threading.CompressedStack
-
View
@@ -873,20 +873,40 @@ MonoString *ves_icall_System_String_InternalReplace_Str_Comp (MonoString *this,
NULL, &ec);
if(U_SUCCESS (ec)) {
int pos, oldpos, len_delta=0;
- int32_t newstr_len=mono_string_length (new);
- UChar *uret;
+ int32_t newstr_len=mono_string_length (new), match_len;
+ UChar *uret, *match;
for(pos=usearch_first (search, &ec);
pos!=USEARCH_DONE;
pos=usearch_next (search, &ec)) {
+ /* ICU usearch currently ignores most of the collator
+ * attributes :-(
+ *
+ * Check the returned match to see if it really
+ * does match properly...
+ */
+ match_len = usearch_getMatchedLength (search);
+ match=(UChar *)g_malloc0 (sizeof(UChar) * (match_len + 1));
+ usearch_getMatchedText (search, match, match_len, &ec);
+
+ if (ucol_strcoll (coll, match, -1, mono_string_chars (old), -1) == UCOL_EQUAL) {
+ /* OK, we really did get a match */
#ifdef DEBUG
- g_message (G_GNUC_PRETTY_FUNCTION
- ": Got match at %d len %d", pos,
- usearch_getMatchedLength (search));
+ g_message (G_GNUC_PRETTY_FUNCTION
+ ": Got match at %d len %d", pos,
+ match_len);
#endif
- len_delta += (newstr_len -
- usearch_getMatchedLength (search));
+ len_delta += (newstr_len - match_len);
+ } else {
+ /* False alarm */
+#ifdef DEBUG
+ g_message (G_GNUC_PRETTY_FUNCTION
+ ": Got false match at %d len %d",
+ pos, match_len);
+#endif
+ }
+ g_free (match);
}
#ifdef DEBUG
g_message (G_GNUC_PRETTY_FUNCTION
@@ -899,12 +919,25 @@ MonoString *ves_icall_System_String_InternalReplace_Str_Comp (MonoString *this,
for(oldpos=0, pos=usearch_first (search, &ec);
pos!=USEARCH_DONE;
pos=usearch_next (search, &ec)) {
+ match_len = usearch_getMatchedLength (search);
+ match=(UChar *)g_malloc0 (sizeof(UChar) * (match_len + 1));
+ usearch_getMatchedText (search, match, match_len, &ec);
+
/* Add the unmatched text */
u_strncat (uret, mono_string_chars (this)+oldpos,
pos-oldpos);
- /* Then the replacement */
- u_strcat (uret, mono_string_chars (new));
- oldpos=pos+usearch_getMatchedLength (search);
+ if (ucol_strcoll (coll, match, -1, mono_string_chars (old), -1) == UCOL_EQUAL) {
+ /* Then the replacement */
+ u_strcat (uret, mono_string_chars (new));
+ } else {
+ /* Then the original, because this is a
+ * false match
+ */
+ u_strncat (uret, mono_string_chars (this)+pos,
+ match_len);
+ }
+ oldpos=pos+match_len;
+ g_free (match);
}
/* Finish off with the trailing unmatched text */
Oops, something went wrong.

0 comments on commit 34822af

Please sign in to comment.