Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 334815 - [client] Can't load editor if filename contains =
Summary: [client] Can't load editor if filename contains =
Status: RESOLVED FIXED
Alias: None
Product: Orion
Classification: ECD
Component: Client (show other bugs)
Version: 0.2   Edit
Hardware: PC Windows 7
: P3 normal (vote)
Target Milestone: 0.2   Edit
Assignee: Susan McCourt CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-01-19 12:02 EST by Mark Macdonald CLA
Modified: 2011-09-01 11:41 EDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Macdonald CLA 2011-01-19 12:02:50 EST
Build Identifier: 0.2 I201101171803

In coding.html, the editor does not appear when a filename contains the = (equals) character.

Reproducible: Always

Steps to Reproduce:
1. Log into Orion using navigate-table.html.
2. Create a file named "foo=bar.txt".
3. Click the file to open the coding page on it.
4. The editor does not appear.
Comment 1 Felipe Heidrich CLA 2011-01-19 12:13:57 EST
I suspect this problem is not limited to "=". During testing the other day I noticed that DBCS chars were messed up (I didn't report the bug at the time caused it could have been a encoding problem on my end).

What are the illegal characters for filename in orion ?
For example, win32 does not allow \ / : * ? " < > |
Comment 2 John Arthorne CLA 2011-01-19 15:10:11 EST
I'll take an initial look to see where the problem is.
Comment 3 John Arthorne CLA 2011-01-20 11:01:31 EST
This is caused by the function eclipse.util.getPositionInfo. It assumes the presence of an = indicates there is position info, such as:

/file/A&key1=value1

There is a bug in its logic that causes it to discard the entire path if it doesn't recognize the part before the '=' character as a parameter. That is easy to fix, but the deeper problem is that it should really be looking for this format:

/file/A?key1=value1&key2=value2...

I.e., unless there is an ? character to indicate a query, it shouldn't interpret & and = as being parameter delimiters at all. I don't know what parts of the client code might be relying on the current format so I'm punting back for someone with more client background to investigate.
Comment 4 Susan McCourt CLA 2011-01-25 12:26:00 EST
I'll take a look.
Comment 5 Susan McCourt CLA 2011-01-27 13:17:01 EST
Fixed >20110127 to make the hash look more like query.
This means file names can't contain '?' but this seems more acceptable and also makes the hash part of our URL look more like a normal URL now

Old style:
http://localhost:8080/coding.html#file=http://localhost:8080/file/D/bundles/org.eclipse.orion.client.core/static/js/util.js&line=93

New style:
http://localhost:8080/coding.html#http://localhost:8080/file/D/static/js/util.js?line=93