Add vasprintf to the Cygwin build
[mono.git] / eglib / src / garray.c
index e9605d0f7862dba4bde3aa0a3e7d56dc7d2a7ef1..dadb6caa1834cbb370ee3fb4ae02cc6f6a6a2085 100644 (file)
@@ -181,3 +181,26 @@ g_array_remove_index (GArray *array,
        return array;
 }
 
+GArray*
+g_array_remove_index_fast (GArray *array,
+                     guint index_)
+{
+       GArrayPriv *priv = (GArrayPriv*)array;
+
+       g_return_val_if_fail (array != NULL, NULL);
+
+       memmove (element_offset (priv, index_),
+                element_offset (priv, array->len - 1),
+                element_length (priv, 1));
+
+       array->len --;
+
+       if (priv->zero_terminated) {
+               memset (element_offset (priv, priv->array.len),
+                       0,
+                       priv->element_size);
+       }
+
+       return array;
+}
+