diff --git a/include/class_objects.inc b/include/class_objects.inc
index 24125a784000e69103e499f800649f0d13f5a738..4de869340133494c7b417ba5c43829733bd58399 100644
--- a/include/class_objects.inc
+++ b/include/class_objects.inc
@@ -193,7 +193,7 @@ class objects
 
   static function create ($type)
   {
-    return self::open($type, 'new');
+    return self::open('new', $type);
   }
 
   static function infos ($type)
diff --git a/include/class_session.inc b/include/class_session.inc
index 1168ba0a9cb456d51c8401a8e2702cba902fa7aa..09bdce75ad3a4e0418904b2bda8680a1a8594a1c 100644
--- a/include/class_session.inc
+++ b/include/class_session.inc
@@ -252,6 +252,7 @@ class session {
    */
   public static function start()
   {
+	session_name("FusionDirectory");
     /* Set cookie lifetime to one day (The parameter is in seconds ) */
     session_set_cookie_params(24*60*60);
 
@@ -262,7 +263,6 @@ class session {
        !! The garbage collector is a cron job on debian systems, the cronjob will fetch the timeout from
        the php.ini, so if you use debian, you must hardcode session.gc_maxlifetime in your php.ini */
     ini_set("session.gc_maxlifetime",24*60*60);
-    session_name("FusionDirectory");
     session_start();
 
     /* Check for changed browsers and bail out */