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.
