view finch/libgnt/pygnt/common.c @ 22015:72f90ea7ae34

Don't assume perl is at /usr/bin/perl, use /usr/bin/env instead. This is not foolproof, but it's consistent with what we're doing for Python. If this causes problems, we can revert or try something else. Refs #4436
author Richard Laager <rlaager@wiktel.com>
date Sat, 05 Jan 2008 18:41:33 +0000
parents 5e1412f4e67a
children
line wrap: on
line source

#include "common.h"

PyObject *
create_pyobject_from_string_list(GList *list)
{
	PyObject *py_list;
	if (list == NULL) {
		Py_INCREF(Py_None);
		return Py_None;
	}
	if ((py_list = PyList_New(0)) == NULL) {
		g_list_foreach(list, (GFunc)g_free, NULL);
		g_list_free(list);
		return NULL;
	}
	while (list) {
		PyObject *obj = PyString_FromString(list->data);
		PyList_Append(py_list, obj);
		Py_DECREF(obj);
		g_free(list->data);
		list = g_list_delete_link(list, list);
	}
	return py_list;
}