summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDenys Vlasenko <dvlasenk@redhat.com>2010-12-22 14:49:03 +0100
committerDenys Vlasenko <dvlasenk@redhat.com>2010-12-22 14:49:03 +0100
commit639ebf76098f56ce33d9b774acc11f4a8e60be3d (patch)
treee73a8057641776a2ae3bc1ac917991137c8b26c7 /src
parentdf1b1d501106687fcf0039dc9771c4455c346df5 (diff)
downloadabrt-639ebf76098f56ce33d9b774acc11f4a8e60be3d.tar.gz
abrt-639ebf76098f56ce33d9b774acc11f4a8e60be3d.tar.xz
abrt-639ebf76098f56ce33d9b774acc11f4a8e60be3d.zip
src/report-python: expose CD_FLAG_foo constants to Python wrapper
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
Diffstat (limited to 'src')
-rw-r--r--src/lib/crash_data.c5
-rw-r--r--src/report-python/reportmodule.c10
-rwxr-xr-xsrc/report-python/test_full2
3 files changed, 16 insertions, 1 deletions
diff --git a/src/lib/crash_data.c b/src/lib/crash_data.c
index b3c36ec7..2cbc043b 100644
--- a/src/lib/crash_data.c
+++ b/src/lib/crash_data.c
@@ -43,6 +43,11 @@ void add_to_crash_data_ext(crash_data_t *crash_data,
const char *content,
unsigned flags)
{
+ if (!(flags & (CD_FLAG_SYS|CD_FLAG_BIN|CD_FLAG_TXT)))
+ flags |= CD_FLAG_TXT;
+ if (!(flags & (CD_FLAG_ISEDITABLE|CD_FLAG_ISNOTEDITABLE)))
+ flags |= CD_FLAG_ISNOTEDITABLE;
+
struct crash_item *item = (struct crash_item *)xzalloc(sizeof(*item));
item->content = xstrdup(content);
item->flags = flags;
diff --git a/src/report-python/reportmodule.c b/src/report-python/reportmodule.c
index 13184cc0..6dda73cf 100644
--- a/src/report-python/reportmodule.c
+++ b/src/report-python/reportmodule.c
@@ -19,6 +19,9 @@
#include <Python.h>
#include "common.h"
+#include "crash_data.h"
+#include "dump_dir.h"
+
PyObject *ReportError;
static PyMethodDef module_methods[] = {
@@ -67,9 +70,16 @@ init_pyreport(void)
/* init type objects */
Py_INCREF(&p_crash_data_type);
PyModule_AddObject(m, "crash_data", (PyObject *)&p_crash_data_type);
+ PyModule_AddObject(m, "CD_FLAG_SYS" , Py_BuildValue("i", CD_FLAG_SYS ));
+ PyModule_AddObject(m, "CD_FLAG_BIN" , Py_BuildValue("i", CD_FLAG_BIN ));
+ PyModule_AddObject(m, "CD_FLAG_TXT" , Py_BuildValue("i", CD_FLAG_TXT ));
+ PyModule_AddObject(m, "CD_FLAG_ISEDITABLE" , Py_BuildValue("i", CD_FLAG_ISEDITABLE ));
+ PyModule_AddObject(m, "CD_FLAG_ISNOTEDITABLE", Py_BuildValue("i", CD_FLAG_ISNOTEDITABLE));
Py_INCREF(&p_dump_dir_type);
PyModule_AddObject(m, "dump_dir", (PyObject *)&p_dump_dir_type);
+ PyModule_AddObject(m, "DD_FAIL_QUIETLY" , Py_BuildValue("i", DD_FAIL_QUIETLY ));
+ PyModule_AddObject(m, "DD_LOAD_TEXT_RETURN_NULL_ON_FAILURE", Py_BuildValue("i", DD_LOAD_TEXT_RETURN_NULL_ON_FAILURE));
Py_INCREF(&p_run_event_state_type);
PyModule_AddObject(m, "run_event_state", (PyObject *)&p_run_event_state_type);
diff --git a/src/report-python/test_full b/src/report-python/test_full
index a9f32034..05020f05 100755
--- a/src/report-python/test_full
+++ b/src/report-python/test_full
@@ -22,6 +22,6 @@ def log_function(line):
cd = crash_data()
cd.add("foo", "bar")
-cd.add("analyzer", "baz")
+cd.add("analyzer", "baz", CD_FLAG_ISNOTEDITABLE)
r = run_event_on_crash_data(cd, "post-create", log_function)
print "Result:", r