Greenbone Vulnerability Management Libraries  10.0.0
array.c
Go to the documentation of this file.
1 /* Copyright (C) 2009-2019 Greenbone Networks GmbH
2  *
3  * SPDX-License-Identifier: GPL-2.0-or-later
4  *
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License
7  * as published by the Free Software Foundation; either version 2
8  * of the License, or (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18  */
19 
25 #include "array.h"
26 
32 GPtrArray *
34 {
35  return g_ptr_array_new ();
36 }
37 
43 void
45 {
46  array_free (*array);
47  *array = make_array ();
48 }
49 
57 void
58 array_free (GPtrArray *array)
59 {
60  if (array)
61  {
62  guint index = array->len;
63  while (index--)
64  g_free (g_ptr_array_index (array, index));
65  g_ptr_array_free (array, TRUE);
66  }
67 }
68 
75 void
76 array_add (array_t *array, gpointer pointer)
77 {
78  if (array)
79  g_ptr_array_add (array, pointer);
80 }
81 
87 void
89 {
90  if (array)
91  g_ptr_array_add (array, NULL);
92 }
void array_reset(array_t **array)
Reset an array.
Definition: array.c:44
void array_free(GPtrArray *array)
Free global array value.
Definition: array.c:58
Array utilities.
GPtrArray array_t
Definition: array.h:30
void array_terminate(array_t *array)
Terminate an array.
Definition: array.c:88
void array_add(array_t *array, gpointer pointer)
Push a generic pointer onto an array.
Definition: array.c:76
GPtrArray * make_array()
Make a global array.
Definition: array.c:33