Download & Extend

URL encoding "%3A" for colon creates image not found error when using non-default port :8888

Project:Fast Gallery
Version:6.x-4.0-beta7
Component:Code
Category:bug report
Priority:normal
Assigned:Unassigned
Status:closed (fixed)

Issue Summary

My fast gallery with lightbox2 worked fine on my hosted website, but when I copied it down to my local host (MAMP on OSX with non-default port, http://my_website.local:8888), I was getting the "camera with a line through it" on slideshows, indicating a file not found problem. I traced the issue to the encoding of the URL for the imagecache images in the gallery.

Here is an example of the failing URL created by fast_gallery on my images:

http://my_website.local%3A8888/sites/default/files/imagecache/750W/gallery/my_gallery/DSC7111.jpg

The problem is the "%3A" that has been substituted for the ":".

I fixed this with the following brute-force code in my page.tpl.php file:

<?php if ($content) {
     
$content = str_replace('%3A8888/',':8888/', $content);
}
?>

Searching through fast_gallery.module for $img_path or drupal_urlencode, I find a couple places where URL encodings happen (lines 496 - 524, and lines 740 - 760), sometimes to "fix the URL created by imagecache_create_url()". For example:

$img_path = drupal_urlencode(utf8_decode($img_path));

Basically, it seems that the URL encoding and decoding may handle path and file names okay, but the "http://my_website.local:8888" structure isn't handled correctly.

Comments

#1

Status:active» closed (fixed)

this version is not supported anymore

nobody click here