Steps to reproduce:
1) Create a Page node with the title "Some Title" and put some bogus text in the body.
2) Create another Page node, and in the content put a "freelinking" link "[[Some Title]]"
3) View the Page node created during step 2. You will see the hyperlink with the text "Some Title". This hyperlink -should- take you to the Page node created during step 1. However, the actual hyperlink will be "(...)/index.php?q=freelinking/Some%2520Title"; Instead of "Some%20Title" the freelinking module appears to output "Some%2520Title".
This bug makes it impossible to link to nodes that have a title that contains more than one word.
Comments
Comment #1
Valorum commentedThe culprit -seems- to be on line 278
$replacement = l($phrase, 'freelinking/' . rawurlencode(htmlspecialchars(rawurlencode($freelink))));
When i replace this with
$replacement = l($phrase, 'freelinking/' . urlencode($freelink));
it creates nicely URL-encoded strings for the title, changing a space into a "+". This seems to work, and it matches what is done on line 286 for CamelCase freelinks. Was there a reason for the difference??
Comment #2
eafarris commentedhttp://drupal.org/node/46495