[vala] glib-2.0: add non-null support for string.joinv
- From: Luca Bruno <lucabru src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [vala] glib-2.0: add non-null support for string.joinv
- Date: Wed, 18 Jun 2014 19:55:31 +0000 (UTC)
commit cb21a2c03ee2d5542d2b630e378745522b33da33
Author: Evan Nemerson <evan nemerson com>
Date: Sat May 3 20:28:46 2014 -0700
glib-2.0: add non-null support for string.joinv
Updated patch after fixing accessing .length of arrays
in the non-nullable semantics
Fixes bug 728656
vapi/glib-2.0.vapi | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)
---
diff --git a/vapi/glib-2.0.vapi b/vapi/glib-2.0.vapi
index f30dcba..dbb92fb 100644
--- a/vapi/glib-2.0.vapi
+++ b/vapi/glib-2.0.vapi
@@ -960,7 +960,7 @@ public class string {
[CCode (cname = "g_stpcpy")]
private static void* copy_to_buffer (void* dest, string src);
[CCode (cname = "_vala_g_strjoinv")]
- public static string joinv (string? separator, string[]? str_array) {
+ public static string joinv (string? separator, string?[]? str_array) {
if (separator == null) {
separator = "";
}
@@ -968,19 +968,19 @@ public class string {
int i;
size_t len = 1;
for (i = 0 ; (str_array.length != -1 && i < str_array.length) || (str_array.length ==
-1 && str_array[i] != null) ; i++) {
- len += (str_array[i] != null) ? str_array[i].length : 0;
+ len += (str_array[i] != null) ? ((!) str_array[i]).length : 0;
}
if (i == 0) {
return "";
}
str_array.length = i;
- len += separator.length * (i - 1);
+ len += ((!) separator).length * (i - 1);
string* res = GLib.malloc (len);
- void* ptr = string.copy_to_buffer ((void*) res, str_array[0]);
+ void* ptr = string.copy_to_buffer ((void*) res, (!) str_array[0]);
for (i = 1 ; i < str_array.length ; i++) {
- ptr = string.copy_to_buffer (ptr, separator);
- ptr = string.copy_to_buffer (ptr, str_array[i] ?? "");
+ ptr = string.copy_to_buffer (ptr, (!) separator);
+ ptr = string.copy_to_buffer (ptr, (str_array[i] != null) ? ((!) str_array[i])
: "");
}
return (owned) res;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]