summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2009-12-20 17:49:48 +0100
committerJelmer Vernooij <jelmer@ganieda.vernstok.nl>2009-12-21 23:40:11 +0100
commitc8e62797eb2b78427c9ecb193c878c646145c32a (patch)
tree3f2bd21fa8ad305259023379d1b6cf261f56b3d0
parent9b6b01aab6a6a0ebb34798bb78febb2df17b302d (diff)
downloadsamba-c8e62797eb2b78427c9ecb193c878c646145c32a.tar.gz
samba-c8e62797eb2b78427c9ecb193c878c646145c32a.tar.bz2
samba-c8e62797eb2b78427c9ecb193c878c646145c32a.zip
Fix initialisation of TypeObject samba.param.LoadparmService.
Found by Ricardo Jorge <rvelhote@gmail.com>.
-rw-r--r--source4/param/pyparam.c3
-rw-r--r--source4/param/tests/bindings.py10
2 files changed, 10 insertions, 3 deletions
diff --git a/source4/param/pyparam.c b/source4/param/pyparam.c
index eb2da11bb0..b4255002d2 100644
--- a/source4/param/pyparam.c
+++ b/source4/param/pyparam.c
@@ -374,6 +374,9 @@ void initparam(void)
if (PyType_Ready(&PyLoadparmContext) < 0)
return;
+ if (PyType_Ready(&PyLoadparmService) < 0)
+ return;
+
m = Py_InitModule3("param", pyparam_methods, "Parsing and writing Samba configuration files.");
if (m == NULL)
return;
diff --git a/source4/param/tests/bindings.py b/source4/param/tests/bindings.py
index 41a67f93fc..1915e79223 100644
--- a/source4/param/tests/bindings.py
+++ b/source4/param/tests/bindings.py
@@ -2,17 +2,17 @@
# Unix SMB/CIFS implementation.
# Copyright (C) Jelmer Vernooij <jelmer@samba.org> 2007
-#
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
-#
+#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-#
+#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
@@ -50,3 +50,7 @@ class LoadParmTestCase(unittest.TestCase):
file = param.LoadParm()
file.load_default()
+ def test_section_nonexistant(self):
+ samba_lp = param.LoadParm()
+ samba_lp.load_default()
+ self.assertRaises(KeyError, samba_lp.__getitem__, "nonexistant")