Okay, I'm not sure why the program would deadlock there.
That calls dispatches a job for the main thread to sync with it, the main
thread should be woken and then deal with it...
Maybe there's a bug in the condition/notify code, I'll see what I can find.

2009/4/10 Quentin Anciaux <[email protected]>

> Thanks,
>
> it get stuck on calling this line in LoadTexture :
>
> Engine->SyncEngineListsWait(this);
>
> Quentin
>
> 2009/4/10 Mike Gist <[email protected]>:
> > Maybe add printfs in csThreadedLoader::LoadTexture, which you can find at
> > line 360 in plugins/csparser/loadtex.cpp
> > Just scatter them through so you can see at what point there it's getting
> > stuck.
> >
> > 2009/4/10 Quentin Anciaux <[email protected]>
> >>
> >> I did what you say... and it is stuck on calling in csloader.cpp:
> >>
> >> csRef<iThreadReturn> itr = loader->LoadTextureWait(vfs->GetCwd(),
> >> Name, FileName, Flags, tm, reg,
> >>      create_material, free_image, collection, keepFlags);
> >>
> >> The ctrl-c was indeed due to buffering.
> >>
> >> loader is set with csQueryRegistryOrLoad<iThreadedLoader>(object_reg,
> >> "crystalspace.level.threadedloader");
> >>
> >> I don't know what to do more.
> >>
> >> Regards,
> >> Quentin
> >>
> >> 2009/4/10 Eric Sunshine <[email protected]>:
> >> > You may be getting misled by stdout not being flushed. Either emit
> your
> >> > diagnostics via fprintf(stderr,...), which should be unbuffered by
> >> > default, or, if you still want to use stdout, invoke fflush(stdout)
> >> > after each printf().
> >> >
> >> > -- ES
> >> >
> >> > Quentin Anciaux wrote:
> >> >> I've put a printf before the call and as the first line of the method
> >> >> FindTexture in loadercontext.cpp.
> >> >>
> >> >>       printf("ParseShaderVar %s\n",texname);
> >> >>         tex = ldr_context->FindTexture (texname);
> >> >>
> >> >> and
> >> >>
> >> >> iTextureWrapper* LoaderContext::FindTexture (const char* name, bool
> >> >> dontWaitForLoad)
> >> >> {
> >> >>    printf("LoaderContext::FindTexture ?????");
> >> >>
> >> >> Strangely I have this as result:
> >> >>
> >> >> ParseShaderVar /lib/std/shadow_noise.png
> >> >>
> >> >> but If I do a CTRL-C, I have the printf in FindTexture that is
> output.
> >> >> So it seems it is stuck in between a call like if the method dispatch
> >> >> was broken.
> >> >>
> >> >> ParseShaderVar /lib/std/shadow_noise.png
> >> >> ^CLoaderContext::FindTexture ?????
> >> >>
> >> >> Regards,
> >> >> Quneint Anciaux
> >> >>
> >> >> 2009/4/10 Quentin Anciaux <[email protected]>:
> >> >>> Specifically it is stucks at the following line:
> >> >>>
> >> >>> tex = ldr_context->FindTexture (texname);
> >> >>>
> >> >>> in 'plugins/csparser/services/shader.cpp' trying to find the texture
> >> >>> '/lib/std/shadow_noise.png' which is in the standard.zip.
> >> >>>
> >> >>> Here is my vfs.cfg:
> >> >>>
> >> >>> ;;; Virtual File System mount table
> >> >>> ;;;
> >> >>> ;;; $/ -- path delimiter (i.e. "/" on Unix; "\" on Windows)
> >> >>> ;;; $@ -- installation directory of Crystal Space
> >> >>> ;;; $* -- application resource directory; same as csGetResourceDir()
> >> >>> ;;; $^ -- directory in which application resides; same as
> >> >>> csGetAppDir()
> >> >>> ;;; The expansions of $@, $*, and $^ always have a trailing path
> >> >>> delimiter.
> >> >>>
> >> >>> ; Some basic mount points
> >> >>> VFS.Mount.~ = $(HOME)$/
> >> >>> VFS.Mount.this = $.$/
> >> >>> VFS.Mount.tmp = $(CS_TMP)$/
> >> >>>
> >> >>> ; Configuration repository
> >> >>> VFS.Mount.config = $(CS_CONFIGDIR)$/
> >> >>> VFS.Mount.data = $(CS_DATADIR)$/
> >> >>>
> >> >>> ; Miscellaneous resources.
> >> >>> VFS.Mount.varia = $(CS_DATADIR)$/varia$/
> >> >>> VFS.Mount.scripts = $(CS_SHAREDIR)$/bindings$/
> >> >>>
> >> >>> VFS.Mount.shader = $(CS_DATADIR)$/shader$/
> >> >>> ; The Unifont
> >> >>> VFS.Mount.fonts/unifont = $(CS_DATADIR)$/unifont.zip
> >> >>> ; The TTF font library
> >> >>> VFS.Mount.fonts/ttf   = $(CS_DATADIR)$/ttf$/, $(TTF_PATH:$.$/),
> >> >>> $(CS_DATADIR)$/ttf-dejavu.zip, $(CS_DATADIR)$/ttf-vera.zip
> >> >>>
> >> >>> ; The following should not change too often...
> >> >>> ; The idea is that everything that should be changed (such as CDROM
> >> >>> variable)
> >> >>> ; is set by some sort of setup (installation) program.
> >> >>> ; Note that variables in VFS.Platform. section will override any
> >> >>> ; variables in VFS.PlatformAlias. section.
> >> >>> VFS.Alias.Unix = VFS.Unix
> >> >>> VFS.Alias.MacOS/X = VFS.Unix
> >> >>> VFS.Alias.Win32 = VFS.CP/M
> >> >>>
> >> >>> ; strange key names follow:
> >> >>> ; VFS.Unix.. means key '.' in section VFS.Unix.*
> >> >>> ; VFS.Unix... means key '..' in section VFS.Unix.*
> >> >>> VFS.Unix.. = .
> >> >>> VFS.Unix... = ..
> >> >>> VFS.Unix.CS_TMP = /tmp
> >> >>> ; This is true at least for systems using XFree86
> >> >>> VFS.Unix.TTF_PATH = /usr/X11R6/lib/X11/fonts/Truetype/,
> >> >>> /usr/X11R6/lib/X11/fonts/TTF/
> >> >>>
> >> >>> VFS.CP/M.. = .
> >> >>> VFS.CP/M... = ..
> >> >>> VFS.CP/M.HOME = $(HOMEDIR:$(HOMEPATH:.))
> >> >>> VFS.CP/M.TMP = $(TEMP:$(TMP:$(SYSTEMROOT)$/temp))
> >> >>> ; The standard location of TTF fonts is the X:\Windows\fonts
> directory
> >> >>> VFS.Win32.TTF_PATH = $(SYSTEMROOT)$/fonts$/
> >> >>>
> >> >>> ; Configuration-time installation paths.
> >> >>> VFS.Unix.CS_SHAREDIR = $(CRYSTAL)$/..$/..$/share$/crystalspace$/
> >> >>> VFS.Unix.CS_DATADIR =
> $(CRYSTAL)$/..$/..$/share$/crystalspace$/data$/
> >> >>> VFS.Unix.CS_CONFIGDIR =
> >> >>> $(CRYSTAL)$/..$/..$/share$/crystalspace$/config$/
> >> >>> VFS.Unix.CS_MAPDIR =
> >> >>> $(CRYSTAL)$/..$/..$/share$/crystalspace$/data$/maps$/
> >> >>>
> >> >>> VFS.CP/M.CS_SHAREDIR = $(CRYSTAL)$/..$/..$/share$/crystalspace$/
> >> >>> VFS.CP/M.CS_DATADIR =
> $(CRYSTAL)$/..$/..$/share$/crystalspace$/data$/
> >> >>> VFS.CP/M.CS_CONFIGDIR =
> >> >>> $(CRYSTAL)$/..$/..$/share$/crystalspace$/config$/
> >> >>> VFS.CP/M.CS_MAPDIR =
> >> >>> $(CRYSTAL)$/..$/..$/share$/crystalspace$/data$/maps$/
> >> >>>
> >> >>> ; Level to load.
> >> >>> VFS.Mount.lib/std = $(CS_DATADIR)$/standard.zip
> >> >>> VFS.Mount.lib/stdtex = $(CS_DATADIR)$/standard.zip
> >> >>> VFS.Mount.lib/fallout = $(CS_DATADIR)$/fallout$/
> >> >>> VFS.Mount.lib/std/castle = $(CS_DATADIR)$/castle-tex.zip
> >> >>> VFS.Mount.lev/castle   = $(CS_DATADIR)$/castle$/
> >> >>> VFS.Mount.lev/terrain = $(CS_MAPDIR)$/terrain$/
> >> >>> VFS.Mount.lev/terrainf = $(CS_MAPDIR)$/terrainf$/
> >> >>>
> >> >>>
> >> >>>
> >> >>> --
> >> >>> All those moments will be lost in time, like tears in rain.
> >> >>>
> >> >>
> >> >>
> >> >>
> >> >
> >> >
> >> >
> >> >
> ------------------------------------------------------------------------------
> >> > This SF.net email is sponsored by:
> >> > High Quality Requirements in a Collaborative Environment.
> >> > Download a free trial of Rational Requirements Composer Now!
> >> > http://p.sf.net/sfu/www-ibm-com
> >> > _______________________________________________
> >> > Crystal-main mailing list
> >> > [email protected]
> >> > https://lists.sourceforge.net/lists/listinfo/crystal-main
> >> > Unsubscribe:
> >> > mailto:[email protected]?subject=unsubscribe
> >> >
> >>
> >>
> >>
> >> --
> >> All those moments will be lost in time, like tears in rain.
> >>
> >>
> >>
> ------------------------------------------------------------------------------
> >> This SF.net email is sponsored by:
> >> High Quality Requirements in a Collaborative Environment.
> >> Download a free trial of Rational Requirements Composer Now!
> >> http://p.sf.net/sfu/www-ibm-com
> >> _______________________________________________
> >> Crystal-main mailing list
> >> [email protected]
> >> https://lists.sourceforge.net/lists/listinfo/crystal-main
> >> Unsubscribe:
> >> mailto:[email protected]?subject=unsubscribe
> >
> >
> >
> > --
> > -Mike
> >
> >
> ------------------------------------------------------------------------------
> > This SF.net email is sponsored by:
> > High Quality Requirements in a Collaborative Environment.
> > Download a free trial of Rational Requirements Composer Now!
> > http://p.sf.net/sfu/www-ibm-com
> > _______________________________________________
> > Crystal-main mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/crystal-main
> > Unsubscribe:
> > mailto:[email protected]?subject=unsubscribe
> >
> >
>
>
>
> --
> All those moments will be lost in time, like tears in rain.
>
>
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by:
> High Quality Requirements in a Collaborative Environment.
> Download a free trial of Rational Requirements Composer Now!
> http://p.sf.net/sfu/www-ibm-com
> _______________________________________________
> Crystal-main mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/crystal-main
> Unsubscribe: mailto:[email protected]
> ?subject=unsubscribe
>



-- 
-Mike
------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
Crystal-main mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/crystal-main
Unsubscribe: 
mailto:[email protected]?subject=unsubscribe

Reply via email to