From 42de51b18d302d07e109c24dfb0ae237e6d38643 Mon Sep 17 00:00:00 2001 From: Adrian Lang Date: Wed, 22 Sep 2010 16:29:25 +0200 Subject: Work around WebKit bug: newlines at the end of input values are removed. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In WebKit, newlines at the end of input field’s value parameters are removed. This breaks $PRE, so we protect those new lines with a dot and later remove the dot. --- doku.php | 2 +- inc/html.php | 2 +- lib/exe/ajax.php | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/doku.php b/doku.php index 3f930a965..ae44fcec7 100644 --- a/doku.php +++ b/doku.php @@ -40,7 +40,7 @@ if(empty($HIGH)) $HIGH = getGoogleQuery(); if (isset($_POST['wikitext'])) { $TEXT = cleanText($_POST['wikitext']); } -$PRE = cleanText($_POST['prefix']); +$PRE = cleanText(substr($_POST['prefix'], 0, -1)); $SUF = cleanText($_POST['suffix']); $SUM = $_REQUEST['summary']; diff --git a/inc/html.php b/inc/html.php index 0bf5842ef..add559971 100644 --- a/inc/html.php +++ b/inc/html.php @@ -1177,7 +1177,7 @@ function html_edit(){ $form->addHidden('id', $ID); $form->addHidden('rev', $REV); $form->addHidden('date', $DATE); - $form->addHidden('prefix', $PRE); + $form->addHidden('prefix', $PRE . '.'); $form->addHidden('suffix', $SUF); $form->addHidden('changecheck', $check); diff --git a/lib/exe/ajax.php b/lib/exe/ajax.php index 533b8f91c..e9c59ca5d 100644 --- a/lib/exe/ajax.php +++ b/lib/exe/ajax.php @@ -136,7 +136,7 @@ function ajax_lock(){ if(!$client) $client = clientIP(true); $draft = array('id' => $id, - 'prefix' => $_POST['prefix'], + 'prefix' => substr($_POST['prefix'], 0, -1), 'text' => $_POST['wikitext'], 'suffix' => $_POST['suffix'], 'date' => (int) $_POST['date'], -- cgit v1.2.3