diff --git a/Allura/allura/controllers/trovecategories.py b/Allura/allura/controllers/trovecategories.py
index 133638a..91450fd 100644
--- a/Allura/allura/controllers/trovecategories.py
+++ b/Allura/allura/controllers/trovecategories.py
@@ -39,7 +39,7 @@
 
 
 class TroveAdminException(Exception):
-    def __init__(self, flash_args, redir_params, upper):
+    def __init__(self, flash_args, redir_params='', upper=None):
         super(TroveAdminException, self).__init__()
 
         self.flash_args = flash_args
@@ -126,7 +126,7 @@
 
         newid = max(
             [el.trove_cat_id for el in M.TroveCategory.query.find()]) + 1
-        shortname = h.slugify(shortname or name)[1]
+        shortname = h.slugify(shortname or name, True)[1]
 
         if upper:
             trove_type = upper.fullpath.split(' :: ')[0]
diff --git a/Allura/allura/tests/functional/test_trovecategory.py b/Allura/allura/tests/functional/test_trovecategory.py
index ceeeaaa..2dc438f 100644
--- a/Allura/allura/tests/functional/test_trovecategory.py
+++ b/Allura/allura/tests/functional/test_trovecategory.py
@@ -179,3 +179,23 @@
         assert_equal(possible[0].fullname, 'New Child')
         assert_equal(possible[0].shortname, 'new-child')
         assert_equal(possible[0].trove_parent_id, 2)
+
+        # test slugify with periods. the relevant form becomes the third, after a child has been created above.
+        r = self.app.get('/categories/2')
+        form = r.forms[3]
+        form['categoryname'].value = "New Child.io"
+        form.submit()
+        possible = M.TroveCategory.query.find(dict(fullname='New Child.io')).all()
+        assert_equal(possible[0].shortname, 'new-child.io')
+
+    def test_create_child_bad_upper(self):
+        self.create_some_cats()
+        session(M.TroveCategory).flush()
+        r = self.app.get('/categories/2')
+
+        form = r.forms[2]
+        form['categoryname'].value = "New Child"
+        form['uppercategory_id'].value = "541561615"
+        r = form.submit().follow()
+
+        assert 'Invalid upper category' in r.text
