diff --git a/modules/path/path.admin.inc b/modules/path/path.admin.inc
index dba0d03..f5faf74 100644
--- a/modules/path/path.admin.inc
+++ b/modules/path/path.admin.inc
@@ -91,7 +91,7 @@ function path_admin_form(&$form_state, $edit = array('src' => '', 'dst' => '', '
     '#type' => 'textfield',
     '#title' => t('Existing system path'),
     '#default_value' => $edit['src'],
-    '#maxlength' => 128,
+    '#maxlength' => 255,
     '#size' => 45,
     '#description' => t('Specify the existing path you wish to alias. For example: node/28, forum/1, taxonomy/term/1+2.'),
     '#field_prefix' => url(NULL, array('absolute' => TRUE)) . (variable_get('clean_url', 0) ? '' : '?q='),
@@ -101,7 +101,7 @@ function path_admin_form(&$form_state, $edit = array('src' => '', 'dst' => '', '
     '#type' => 'textfield',
     '#title' => t('Path alias'),
     '#default_value' => $edit['dst'],
-    '#maxlength' => 128,
+    '#maxlength' => 255,
     '#size' => 45,
     '#description' => t('Specify an alternative path by which this data can be accessed. For example, type "about" when writing an about page. Use a relative path and don\'t add a trailing slash or the URL alias won\'t work.'),
     '#field_prefix' => url(NULL, array('absolute' => TRUE)) . (variable_get('clean_url', 0) ? '' : '?q='),
diff --git a/modules/path/path.module b/modules/path/path.module
index a267fd6..3e67199 100644
--- a/modules/path/path.module
+++ b/modules/path/path.module
@@ -191,7 +191,7 @@ function path_form_alter(&$form, $form_state, $form_id) {
     $form['path']['path'] = array(
       '#type' => 'textfield',
       '#default_value' => $path,
-      '#maxlength' => 128,
+      '#maxlength' => 255,
       '#collapsible' => TRUE,
       '#collapsed' => TRUE,
       '#description' => t('Optionally specify an alternative URL by which this node can be accessed. For example, type "about" when writing an about page. Use a relative path and don\'t add a trailing slash or the URL alias won\'t work.'),
diff --git a/modules/system/system.install b/modules/system/system.install
index 9263daa..cbdf767 100644
--- a/modules/system/system.install
+++ b/modules/system/system.install
@@ -1127,13 +1127,13 @@ function system_schema() {
       'src' => array(
         'description' => 'The Drupal path this alias is for; e.g. node/12.',
         'type' => 'varchar',
-        'length' => 128,
+        'length' => 255,
         'not null' => TRUE,
         'default' => ''),
       'dst' => array(
         'description' => 'The alias for this path; e.g. title-of-the-story.',
         'type' => 'varchar',
-        'length' => 128,
+        'length' => 255,
         'not null' => TRUE,
         'default' => ''),
       'language' => array(
@@ -2713,6 +2713,16 @@ function system_update_6055() {
 }
 
 /**
+ * Increase permitted length of url aliases to 255 characters.
+ */
+function system_update_6056() {
+  $ret = array();
+  db_change_field($ret, 'url_alias', 'src', 'src', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE));
+  db_change_field($ret, 'url_alias', 'dst', 'dst', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE));
+  return $ret;
+}
+
+/**
  * @} End of "defgroup updates-6.x-extra"
  * The next series of updates should start at 7000.
  */
