]> git.plutz.net Git - shellwiki/commitdiff
avoid slower cgilite POST function
authorPaul Hänsch <paul@plutz.net>
Tue, 15 Sep 2026 15:58:08 +0000 (17:58 +0200)
committerPaul Hänsch <paul@plutz.net>
Tue, 15 Sep 2026 15:58:08 +0000 (17:58 +0200)
handlers/60_edit.sh

index 1bef79c24717f0d0d2d9ed01df2a8326a2477f76..a036293d564ae457c7c678269014d5fc0cf88337 100755 (executable)
@@ -23,13 +23,16 @@ esac
 
 edit_page="${PATH_INFO%\[edit\]}"
 edit_file="$_DATA/pages/$edit_page/#page.md"
-[ "$REQUEST_METHOD" = POST ] && edit_action="$(POST action)"
+# [ "$REQUEST_METHOD" = POST ] && edit_action="$(POST action)"
+[ "$REQUEST_METHOD" = POST ] && edit_action="$(
+  printf %s\\n "${cgilite_post}" |sed -nE 's;^(.*&)?action=([^&]*)(&.*)?$;\2;p;'
+)"
 
 edit_handler_pagetext() {
   # Custom POST data parser because cgilite POST is only
   # fast for small text
   local pagetext="$(
-    printf %s \\n "${cgilite_post}" \
+    printf %s\\n "${cgilite_post}" \
     | sed -En '
       /^(.*&)?pagetext=([^&]*)(&.*)?$/{
         s;^(.*&)?pagetext=([^&]*)(&.*)?$;\2;;