An unlikely theory, but -O2 and above will use a .mem file, if that file can't be loaded you should get an error. Can try disabling that with --mem-init-file 0. But, I don't see how that could lead to the particular error you are getting, never seen that before.
On Mon, Nov 2, 2015 at 4:51 PM, Pau Ballart <[email protected]> wrote: > Hi again, > > I don't know exactly why but the next day it was working. Maybe it has to > do with the https connection that may be required. > > I have my code finished and ready to move into production. My a.out.js > file sizes 1.9 MB approx. and when using optimization flags as exposed in > the documentation I have a problem. If I use -O1 it works and I get a 1.5 > MB file size. Using -O2 or -O3 produces a file of 400 KB but when I run the > code it doesn't work. > [image: Imatge inserida 1] > > Any suggestions? > > 2015-10-29 17:39 GMT-07:00 Alon Zakai <[email protected]>: > >> It could be a bug in chrome. I would try to narrow it down and file a >> testcase for them. >> >> >> On Thu, Oct 29, 2015 at 3:58 PM, Pau Ballart <[email protected]> wrote: >> >>> The chrome debugger says: >>> [image: Imatge inserida 1] >>> And the Firefox: >>> [image: Imatge inserida 2] >>> >>> 2015-10-29 15:49 GMT-07:00 Pau Ballart <[email protected]>: >>> >>>> Hello, >>>> >>>> I've been working hard with my implementation and I almost got it. >>>> I'd say it's working fine in Safari but I got a DOM exception in Chrome >>>> and Firefox and I have no idea why. the DOM Exception doesn't give any >>>> message nor error code... >>>> The error happens when inside my C code i have an EM_ASM_ARGS() block >>>> and inside this I use the Javascript WebCrypto API to decrypt the image. >>>> The think is the same decrypt method works when I use it outside emscripten >>>> in a normal webpage and inside emscripten it works with Safari! But why it >>>> doesn't work in Chrome? >>>> >>>> Thanks >>>> >>>> 2015-10-20 21:24 GMT-07:00 Alon Zakai <[email protected]>: >>>> >>>>> Yes, malloc the space, and memcpy the contents to that space. >>>>> >>>>> On Tue, Oct 20, 2015 at 8:20 PM, Pau Ballart <[email protected]> >>>>> wrote: >>>>> >>>>>> I did some tries with no success. >>>>>> If I have this declaration: >>>>>> *int p3stuff(char *imgUrl, unsigned char *wrappedkey);* >>>>>> How can I make sure the contents of imgUrl will persist even out of >>>>>> the scope? >>>>>> Because it's a pointer so maybe I need to malloc first the space and >>>>>> then memcpy the contents? >>>>>> Suppose I have a global var like this *char *imageUrl;* I'd be very >>>>>> thankful if you can provide me an example. >>>>>> >>>>>> 2015-10-20 15:57 GMT-07:00 Alon Zakai <[email protected]>: >>>>>> >>>>>>> Yes, if you want something to live beyond the current function call, >>>>>>> you should use malloc(). That will only be reused after you call free() >>>>>>> on >>>>>>> it. >>>>>>> >>>>>>> On Tue, Oct 20, 2015 at 3:51 PM, Pau Ballart <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> Updated to 1.35 but same problem... >>>>>>>> Maybe the question to formulate would be: How can I save in a >>>>>>>> global/static variable some information so that I can acces it later >>>>>>>> in the >>>>>>>> callback function and make sure it's not overwritten? >>>>>>>> What do you think about using malloc() somehow? Would it work? >>>>>>>> >>>>>>>> 2015-10-20 14:18 GMT-07:00 Alon Zakai <[email protected]>: >>>>>>>> >>>>>>>>> Might be worth trying current master (or incoming) then, which is >>>>>>>>> now 1.35.0. >>>>>>>>> >>>>>>>>> On Tue, Oct 20, 2015 at 2:16 PM, Pau Ballart <[email protected]> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> $ emcc -v >>>>>>>>>> emcc (Emscripten gcc/clang-like replacement + linker emulating >>>>>>>>>> GNU ld) 1.34.8 >>>>>>>>>> clang version 3.7.0 >>>>>>>>>> Target: x86_64-apple-darwin15.0.0 >>>>>>>>>> Thread model: posix >>>>>>>>>> INFO root: (Emscripten: Running sanity checks) >>>>>>>>>> >>>>>>>>>> 2015-10-20 14:05 GMT-07:00 Alon Zakai <[email protected]>: >>>>>>>>>> >>>>>>>>>>> One possible issue is that if those values are on the stack, and >>>>>>>>>>> the scope exits, then that stack memory might be reused. For >>>>>>>>>>> example this >>>>>>>>>>> is unsafe: >>>>>>>>>>> >>>>>>>>>>> { >>>>>>>>>>> char buffer[100]; >>>>>>>>>>> // write into buffer >>>>>>>>>>> emscripten_async_wget(..., (void*)buffer); >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> The buffer will be released before the async callback occurs, >>>>>>>>>>> and other data might be written into it before the callback reads >>>>>>>>>>> from it. >>>>>>>>>>> >>>>>>>>>>> Which version of emscripten are you using, btw? I remember a >>>>>>>>>>> while back we had a bug around this. >>>>>>>>>>> >>>>>>>>>>> On Tue, Oct 20, 2015 at 1:36 PM, Pau Ballart <[email protected] >>>>>>>>>>> > wrote: >>>>>>>>>>> >>>>>>>>>>>> Hello, >>>>>>>>>>>> >>>>>>>>>>>> After some research and some refactor I did the following: >>>>>>>>>>>> >>>>>>>>>>>> - In my p3stuff function I >>>>>>>>>>>> call emscripten_set_main_loop(wait_wgets, 0, 0); so the >>>>>>>>>>>> application is not >>>>>>>>>>>> terminated. >>>>>>>>>>>> - In wait_wgets I call the emscripten_async_wget(imageUrl, >>>>>>>>>>>> path, onLoaded, onError); only the first time the method is >>>>>>>>>>>> called. >>>>>>>>>>>> - In the onLoaded callback I >>>>>>>>>>>> call emscripten_cancel_main_loop(); and then I call my c code >>>>>>>>>>>> that perform >>>>>>>>>>>> the jpeg stuff. >>>>>>>>>>>> >>>>>>>>>>>> Problem is: >>>>>>>>>>>> the p3stuff function has 2 arguments: int p3stuff(char *imgUrl, >>>>>>>>>>>> unsigned char *wrappedkey) >>>>>>>>>>>> When it's called i have two global variables unsigned char >>>>>>>>>>>> *wrappedKey; and char *imageUrl; which are assigned with the >>>>>>>>>>>> argument like >>>>>>>>>>>> that: >>>>>>>>>>>> >>>>>>>>>>>> wrappedKey = wrappedkey; >>>>>>>>>>>> imageUrl = imgUrl; >>>>>>>>>>>> >>>>>>>>>>>> I do that in order to access the image url from >>>>>>>>>>>> the wait_wgets() or the wrapped key from the onLoaded callback but >>>>>>>>>>>> I think >>>>>>>>>>>> there is some memory management problems cause if I print the url >>>>>>>>>>>> just >>>>>>>>>>>> before calling emscripten_async_wget the imageUrl variable content >>>>>>>>>>>> is >>>>>>>>>>>> completely rubbish but id I don't print anything it works. >>>>>>>>>>>> >>>>>>>>>>>> So how can I use the global variables in C in order to not get >>>>>>>>>>>> overwritten? Maybe using malloc, or memcopy? >>>>>>>>>>>> >>>>>>>>>>>> Thanks, >>>>>>>>>>>> >>>>>>>>>>>> Pau >>>>>>>>>>>> >>>>>>>>>>>> 2015-10-19 10:53 GMT-07:00 Pau Ballart <[email protected]>: >>>>>>>>>>>> >>>>>>>>>>>>> Okay I will try the async version and let you know. >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks >>>>>>>>>>>>> >>>>>>>>>>>>> 2015-10-17 19:37 GMT-07:00 Alon Zakai <[email protected]>: >>>>>>>>>>>>> >>>>>>>>>>>>>> The only tricky thing with emscripten_wget is that as >>>>>>>>>>>>>> mentioned in the docs, >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> http://kripken.github.io/emscripten-site/docs/api_reference/emscripten.h.html#c.emscripten_wget >>>>>>>>>>>>>> >>>>>>>>>>>>>> it requires the ASYNCIFY option. It's easier in general to >>>>>>>>>>>>>> use the async version, emscripten_async_wget, which does not >>>>>>>>>>>>>> require >>>>>>>>>>>>>> ASYNCIFY. >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Sat, Oct 17, 2015 at 10:47 AM, Pau Ballart < >>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> I think the php code is correct so I'm just trying to >>>>>>>>>>>>>>> download an image and process it's data but I think I'm missing >>>>>>>>>>>>>>> something >>>>>>>>>>>>>>> about the lifecycle or wget function because I get unexpected >>>>>>>>>>>>>>> exit errors. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> So I'd like to know if the emscripten_wget(imgUrl, path); is >>>>>>>>>>>>>>> correct because I have the weirdest behaviour ever that >>>>>>>>>>>>>>> depending on the >>>>>>>>>>>>>>> p3stuff function param "wrappedkey" the download succeeds >>>>>>>>>>>>>>> or not. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 2015-10-15 17:07 GMT-07:00 Alon Zakai <[email protected]>: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> I see you have >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> P3Func = Module.cwrap('p3stuff', 'number', ['string', >>>>>>>>>>>>>>>> 'string']); >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> which looks good. You can then call it with something like >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> result = P3Func('first', 'second'); >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> which I see you are doing. What part of that are you trying >>>>>>>>>>>>>>>> to improve? >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> On Thu, Oct 15, 2015 at 12:59 PM, Pau Ballart < >>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Okay so the php is just calling a function I declared. >>>>>>>>>>>>>>>>> Because I need to pass the image url as an argument and a >>>>>>>>>>>>>>>>> key, I don't know >>>>>>>>>>>>>>>>> how to do it using the main function so I changed the main >>>>>>>>>>>>>>>>> function for >>>>>>>>>>>>>>>>> this one with the two arguments and then called this function >>>>>>>>>>>>>>>>> from my php >>>>>>>>>>>>>>>>> code. >>>>>>>>>>>>>>>>> Is there a better way to call emscripten passing >>>>>>>>>>>>>>>>> parameters? >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Thanks. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> 2015-10-15 12:55 GMT-07:00 Alon Zakai <[email protected] >>>>>>>>>>>>>>>>> >: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> It would be good to focus the question more, it's hard to >>>>>>>>>>>>>>>>>> tell what the core issue is. Try to reduce the problem to >>>>>>>>>>>>>>>>>> just one concrete >>>>>>>>>>>>>>>>>> thing, like just loading a file, and doing it without that >>>>>>>>>>>>>>>>>> custom PHP >>>>>>>>>>>>>>>>>> script, for example. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> On Thu, Oct 15, 2015 at 12:27 PM, Pau Ballart < >>>>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Hello developers, >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> I'm starting a project and I'm new at Javascript and >>>>>>>>>>>>>>>>>>> emscripten. I'm trying to download some image data from a >>>>>>>>>>>>>>>>>>> server and then >>>>>>>>>>>>>>>>>>> process it using some c functions I already have working. I >>>>>>>>>>>>>>>>>>> asked this >>>>>>>>>>>>>>>>>>> question in Stackoverflow so I share you the link and maybe >>>>>>>>>>>>>>>>>>> one of you can >>>>>>>>>>>>>>>>>>> help me. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> http://stackoverflow.com/questions/33087205/emscripten-code-for-image-data-download-using-emscripten-wget-or-emscripten-asyn >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Thank you, >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Pau B >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>>> You received this message because you are subscribed to >>>>>>>>>>>>>>>>>>> the Google Groups "emscripten-discuss" group. >>>>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails >>>>>>>>>>>>>>>>>>> from it, send an email to >>>>>>>>>>>>>>>>>>> [email protected]. >>>>>>>>>>>>>>>>>>> For more options, visit >>>>>>>>>>>>>>>>>>> https://groups.google.com/d/optout. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>> You received this message because you are subscribed to a >>>>>>>>>>>>>>>>>> topic in the Google Groups "emscripten-discuss" group. >>>>>>>>>>>>>>>>>> To unsubscribe from this topic, visit >>>>>>>>>>>>>>>>>> https://groups.google.com/d/topic/emscripten-discuss/BEb-1mjDvZI/unsubscribe >>>>>>>>>>>>>>>>>> . >>>>>>>>>>>>>>>>>> To unsubscribe from this group and all its topics, send >>>>>>>>>>>>>>>>>> an email to >>>>>>>>>>>>>>>>>> [email protected]. >>>>>>>>>>>>>>>>>> For more options, visit >>>>>>>>>>>>>>>>>> https://groups.google.com/d/optout. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>> Pau Ballart >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>> You received this message because you are subscribed to >>>>>>>>>>>>>>>>> the Google Groups "emscripten-discuss" group. >>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails >>>>>>>>>>>>>>>>> from it, send an email to >>>>>>>>>>>>>>>>> [email protected]. >>>>>>>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout >>>>>>>>>>>>>>>>> . >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>> You received this message because you are subscribed to a >>>>>>>>>>>>>>>> topic in the Google Groups "emscripten-discuss" group. >>>>>>>>>>>>>>>> To unsubscribe from this topic, visit >>>>>>>>>>>>>>>> https://groups.google.com/d/topic/emscripten-discuss/BEb-1mjDvZI/unsubscribe >>>>>>>>>>>>>>>> . >>>>>>>>>>>>>>>> To unsubscribe from this group and all its topics, send an >>>>>>>>>>>>>>>> email to [email protected]. >>>>>>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>> Pau Ballart >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>> You received this message because you are subscribed to the >>>>>>>>>>>>>>> Google Groups "emscripten-discuss" group. >>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails >>>>>>>>>>>>>>> from it, send an email to >>>>>>>>>>>>>>> [email protected]. >>>>>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> -- >>>>>>>>>>>>>> You received this message because you are subscribed to a >>>>>>>>>>>>>> topic in the Google Groups "emscripten-discuss" group. >>>>>>>>>>>>>> To unsubscribe from this topic, visit >>>>>>>>>>>>>> https://groups.google.com/d/topic/emscripten-discuss/BEb-1mjDvZI/unsubscribe >>>>>>>>>>>>>> . >>>>>>>>>>>>>> To unsubscribe from this group and all its topics, send an >>>>>>>>>>>>>> email to [email protected]. >>>>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> Pau Ballart >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> Pau Ballart >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> You received this message because you are subscribed to the >>>>>>>>>>>> Google Groups "emscripten-discuss" group. >>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from >>>>>>>>>>>> it, send an email to >>>>>>>>>>>> [email protected]. >>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> You received this message because you are subscribed to a topic >>>>>>>>>>> in the Google Groups "emscripten-discuss" group. >>>>>>>>>>> To unsubscribe from this topic, visit >>>>>>>>>>> https://groups.google.com/d/topic/emscripten-discuss/BEb-1mjDvZI/unsubscribe >>>>>>>>>>> . >>>>>>>>>>> To unsubscribe from this group and all its topics, send an email >>>>>>>>>>> to [email protected]. >>>>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Pau Ballart >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> You received this message because you are subscribed to the >>>>>>>>>> Google Groups "emscripten-discuss" group. >>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>>>> send an email to [email protected]. >>>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> You received this message because you are subscribed to a topic in >>>>>>>>> the Google Groups "emscripten-discuss" group. >>>>>>>>> To unsubscribe from this topic, visit >>>>>>>>> https://groups.google.com/d/topic/emscripten-discuss/BEb-1mjDvZI/unsubscribe >>>>>>>>> . >>>>>>>>> To unsubscribe from this group and all its topics, send an email >>>>>>>>> to [email protected]. >>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Pau Ballart >>>>>>>> >>>>>>>> -- >>>>>>>> You received this message because you are subscribed to the Google >>>>>>>> Groups "emscripten-discuss" group. >>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>> send an email to [email protected]. >>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>> >>>>>>> >>>>>>> -- >>>>>>> You received this message because you are subscribed to a topic in >>>>>>> the Google Groups "emscripten-discuss" group. >>>>>>> To unsubscribe from this topic, visit >>>>>>> https://groups.google.com/d/topic/emscripten-discuss/BEb-1mjDvZI/unsubscribe >>>>>>> . >>>>>>> To unsubscribe from this group and all its topics, send an email to >>>>>>> [email protected]. >>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Pau Ballart >>>>>> >>>>>> -- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "emscripten-discuss" group. >>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>> send an email to [email protected]. >>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>> >>>>> >>>>> -- >>>>> You received this message because you are subscribed to a topic in the >>>>> Google Groups "emscripten-discuss" group. >>>>> To unsubscribe from this topic, visit >>>>> https://groups.google.com/d/topic/emscripten-discuss/BEb-1mjDvZI/unsubscribe >>>>> . >>>>> To unsubscribe from this group and all its topics, send an email to >>>>> [email protected]. >>>>> For more options, visit https://groups.google.com/d/optout. >>>>> >>>> >>>> >>>> >>>> -- >>>> Pau Ballart >>>> >>> >>> >>> >>> -- >>> Pau Ballart >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "emscripten-discuss" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> -- >> You received this message because you are subscribed to a topic in the >> Google Groups "emscripten-discuss" group. >> To unsubscribe from this topic, visit >> https://groups.google.com/d/topic/emscripten-discuss/BEb-1mjDvZI/unsubscribe >> . >> To unsubscribe from this group and all its topics, send an email to >> [email protected]. >> For more options, visit https://groups.google.com/d/optout. >> > > > > -- > Pau Ballart > > -- > You received this message because you are subscribed to the Google Groups > "emscripten-discuss" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
