Hopefully addressed #148 while detecting the patches folder

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
This commit is contained in:
Alexis Maiquez 2023-03-21 07:35:41 +01:00
parent a0d1a7202f
commit 6d5c5b7825
3 changed files with 27 additions and 12 deletions

View File

@ -40,11 +40,32 @@ void CWallpaperApplication::setupContainer (CCombinedContainer& container, const
container.addPkg (basepath / "scene.pkg");
container.addPkg (basepath / "gifscene.pkg");
container.add (new CDirectory (this->m_context.assets));
#if !NDEBUG
// add two possible patches directories to the container
// hopefully one sticks
bool relative = true;
bool absolute = true;
try
{
container.add (new CDirectory ("../share/"));
#else
}
catch (std::runtime_error& ex)
{
relative = false;
}
try
{
container.add (new CDirectory (DATADIR));
#endif /* DEBUG */
}
catch (std::runtime_error& ex)
{
absolute = false;
}
if (!relative && !absolute)
sLog.error ("WARNING: Shader patches directory cannot be found, this might make some backgrounds not work properly");
// TODO: move this somewhere else?
CVirtualContainer* virtualContainer = new CVirtualContainer ();

View File

@ -13,9 +13,7 @@ void CustomXIOErrorExitHandler (Display* dsp, void* userdata)
{
auto context = static_cast <CX11Output*> (userdata);
#if !NDEBUG
sLog.debugerror ("Critical XServer error detected. Attempting to recover...");
#endif /* DEBUG */
// refetch all the resources
context->reset ();
@ -23,9 +21,7 @@ void CustomXIOErrorExitHandler (Display* dsp, void* userdata)
int CustomXErrorHandler (Display* dpy, XErrorEvent* event)
{
#if !NDEBUG
sLog.debugerror ("Detected X error");
#endif /* DEBUG */
// call the original handler so we can keep some information reporting
originalErrorHandler (dpy, event);
@ -35,9 +31,7 @@ int CustomXErrorHandler (Display* dpy, XErrorEvent* event)
int CustomXIOErrorHandler (Display* dsp)
{
#if !NDEBUG
sLog.debugerror ("Detected X error");
#endif /* DEBUG */
return 0;
}