JPEXS Free Flash Decompiler Issue Tracker

If you are looking for the decompiler itself, visit https://github.com/jindrapetrik/jpexs-decompiler

NEW : We have got a new blog where we post some interesting SWF internals info.

List of issuesList of issues

#2515 AS1/2 edit: getUrl not compiled correctly
Author:
Date created:
Type: bug
Visibility: Everybody
Assigned to:
State: closed Help

> What steps will reproduce the problem? Edit ActionScript in attached SWF (either button script). > What is the expected output? What do you see instead? Expected P-Code: GetUrl "http://example.com/1", "BLANK" Actual P-Code: ConstantPool "BLANK", "http://example.com/1", "getUrl" Push constant0 Push constant1 Push 2 Push constant2 CallFunction Pop > What version of the product are you using? Is it "nightly build"? Which operating system do you have? 24.0.1 > Please provide any additional information below. If the problem is related to a SWF file, attach it here, otherwise we can't help you. Similar to #1494. "getURL" in AS will compile to GetURL2, but other casing fails.
This is fixed in nightly 3280. The ActionGetUrl is now decompiled with correct casing = getURL. Also when ActionGetURL2 is not needed, the getURL is compiled as ActionGetURL. Note that ActionScript1/2 is case sensitive since SWF version 7, so calling getUrl won't be the same as getURL.
State: new→upgraded
Thanks, it works now. I compiled that SWF with CS6 and it treats getUrl (or any other casing) as ActionGetURL with SWF version 15, so I'm not sure when the case sensitivity applies. Strictly speaking FFDEC and CS6 are compiling this code differently: getUrl("http://example.com/1","BLANK"); Also, the P-Code edit window in FFDEC still says "GetUrl", while the opcode info window says "GetURL", not sure if that's intended.
Yes, you're right, it seems that case sensitivity for SWF version 7+ does not apply to built-in global functions (at least most of them). I have confirmed that these are case insensitive: call chr duplicateMovieClip eval fscommand getProperty getTimer getVersion gotoAndPlay gotoAndStop int length loadMovie loadMovieNum loadVariables loadVariablesNum mbchr mblength mbord mbsubstring nextFrame nextScene Number ord play prevFrame prevScene print printAsBitmap printAsBitmapNum printNum random removeMovieClip setProperty startDrag stop stopAllSounds stopDrag String substring targetPath toggleHighQuality trace unloadMovie unloadMovieNum Please try nightly 3282, it should compile the getUrl with any case. I also modified the P-code window that it shows official casing - GetURL.
Great, thank you
State: upgraded→closed