diff --git a/sites/all/modules/contrib/ctools/page_manager/page_manager.install b/sites/all/modules/contrib/ctools/page_manager/page_manager.install
index ad2781c..858bd2e 100644
--- a/sites/all/modules/contrib/ctools/page_manager/page_manager.install
+++ b/sites/all/modules/contrib/ctools/page_manager/page_manager.install
@@ -63,6 +63,7 @@ function page_manager_schema_1() {
       'weight' => array(
         'type' => 'int',
         'description' => 'The order in which this handler appears. Lower numbers go first.',
+        'export callback' => 'page_manager_export_task_handler_field_weight',
       ),
       'conf' => array(
         'type' => 'text',
diff --git a/sites/all/modules/contrib/ctools/page_manager/page_manager.module b/sites/all/modules/contrib/ctools/page_manager/page_manager.module
index 790c64e..a9d6e8e 100644
--- a/sites/all/modules/contrib/ctools/page_manager/page_manager.module
+++ b/sites/all/modules/contrib/ctools/page_manager/page_manager.module
@@ -697,6 +697,14 @@ function page_manager_export_task_handler($handler, $indent = '') {
 }
 
 /**
+ * Since weight is duplicated in extra table it needs to be handled as an exception.
+ */
+function page_manager_export_task_handler_field_weight($task, $field, $value) {
+  $result = db_query('SELECT weight FROM {page_manager_weights} WHERE name = (:names)', array(':names' => $task->name))->fetchField();;
+  return is_numeric($result) ? $result : $value;
+}
+
+/**
  * Create a new task handler object.
  *
  * @param $plugin
