#include <mono/metadata/tabledefs.h>
#include <mono/metadata/loader.h>
#include <mono/metadata/object.h>
-#include <mono/metadata/unicode.h>
#include <mono/metadata/exception.h>
#include <mono/metadata/debug-helpers.h>
domain = mono_domain_get ();
if (value == NULL)
- length = 0;
- else {
- for (i = 0; *(value + i) != '\0'; i++);
- length = i;
- }
+ return empty_string (domain);
+
+ for (i = 0; *(value + i) != '\0'; i++);
+ length = i;
return mono_string_new_utf16 (domain, value, length);
}
mono_raise_exception (mono_get_exception_argument_out_of_range ("length"));
arr = mono_array_new (domain, mono_defaults.byte_class, length);
- memcpy (mono_array_addr (arr, guint8*, 0), value + sindex, length);
+ memcpy (mono_array_addr (arr, guint8, 0), value + sindex, length);
/* Find the System.Text.Encoding class */
for (klass = enc->vtable->klass; klass->parent->parent != NULL; klass = klass->parent)
return s;
}
+/* This function is redirected to String.CreateString ()
+ by mono_marshal_get_native_wrapper () */
+void
+ves_icall_System_String_ctor_RedirectToCreateString (void)
+{
+ g_assert_not_reached ();
+}
+
MonoString *
ves_icall_System_String_InternalJoin (MonoString *separator, MonoArray * value, gint32 sindex, gint32 count)
{
/* if no split chars found return the string */
if (splitsize == 0) {
retarr = mono_array_new(mono_domain_get(), mono_get_string_class (), 1);
- mono_array_set(retarr, MonoString *, 0, me);
+ mono_array_setref (retarr, 0, me);
return retarr;
}
tmpstrptr = mono_string_chars(tmpstr);
memcpy(tmpstrptr, src + lastpos, tmpstrsize * sizeof(gunichar2));
- mono_array_set(retarr, MonoString *, arrpos, tmpstr);
+ mono_array_setref (retarr, arrpos, tmpstr);
arrpos++;
lastpos = i + 1;
}
tmpstrptr = mono_string_chars(tmpstr);
memcpy(tmpstrptr, src + lastpos, tmpstrsize * sizeof(gunichar2));
- mono_array_set(retarr, MonoString *, arrpos, tmpstr);
+ mono_array_setref (retarr, arrpos, tmpstr);
}
return retarr;