After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 334666 - url escaping bugged
url escaping bugged
Status: RESOLVED FIXED
Product: totem
Classification: Core
Component: xine-lib backend
1.2.x
Other All
: Normal minor
: ---
Assigned To: Maintainer alias for xine-lib component of Totem
Maintainer alias for xine-lib component of Totem
Depends on:
Blocks:
 
 
Reported: 2006-03-15 16:25 UTC by idra
Modified: 2006-03-17 18:53 UTC
See Also:
GNOME target: ---
GNOME version: 2.11/2.12



Description idra 2006-03-15 16:25:55 UTC
Please describe the problem:
When passing an URL that contains the '#' character totem is unable to visualize
the content and returns that the URL is invalid after attempting to connect to
the remote sever.

Steps to reproduce:
1. start totem form the commandline with a valid url that contains a '#'
character for example:
mms://media.fastweb.it/WM9/raiclick/FMVRAI04000000001441.wmv?idCnt=368&path=RaiClickWeb^Spettacolo^Jazz#1
2. wait and see totem returning an error



Actual results:
An error is thrown no content diplayed

Expected results:
the content to be retrieved and shown

Does this happen every time?
happens every time

Other information:
if you manually replace the '#' with tha escape %23 totem works correctly
Comment 1 Bastien Nocera 2006-03-15 18:00:58 UTC
Which backend is that with?
Comment 2 idra 2006-03-15 18:06:22 UTC
(In reply to comment #1)
> Which backend is that with?
> 

xine
Comment 3 Bastien Nocera 2006-03-15 18:15:55 UTC
xine-lib is dumb and tries to keep bits of the URI to itself:
xine: found input plugin  : mms streaming input plugin
xine: changing option '1' from MRL isn't permitted
Comment 4 Bastien Nocera 2006-03-17 18:53:18 UTC
Fixed in xine-lib CVS:

Index: xine.c
===================================================================
RCS file: /cvsroot/xine/xine-lib/src/xine-engine/xine.c,v
retrieving revision 1.321
diff -u -r1.321 xine.c
--- xine.c      27 Jan 2006 07:46:16 -0000      1.321
+++ xine.c      17 Mar 2006 18:50:39 -0000
@@ -999,15 +999,15 @@
          if (retval == 0) {
            /* the option not found */
            xine_log(stream->xine, XINE_LOG_MSG, _("xine: error while parsing MRL\n"));
+           stream->err = XINE_ERROR_MALFORMED_MRL;
+           stream->status = XINE_STATUS_IDLE;
+           free(config_entry);
+           return 0;
          } else {
             /* not permitted to change from MRL */
             xine_log(stream->xine, XINE_LOG_MSG, _("xine: changing option '%s' from MRL isn't permitted\n"),
              config_entry);
          }
-          stream->err = XINE_ERROR_MALFORMED_MRL;
-          stream->status = XINE_STATUS_IDLE;
-         free(config_entry);
-          return 0;
        }
        free(config_entry);
       }