From b66a6c75b3013940652f7ec025eb35bc1d3bab8a Mon Sep 17 00:00:00 2001
From: david <david>
Date: Sun, 13 Oct 2002 10:43:57 +0000
Subject: [PATCH] Patch from Frederic Bouvier:

I noticed that textures for scenery static objects are not loaded
anymore for a few weeks.  Static objects have absolute path while
random objects and aircraft have relative path but fgLoad3DModel
unconditionally prepend fg_root to the model path. This patch test the
beginning of the model path to choose if fg_root has to be prepended
to the model path.
---
 src/Model/model.cxx | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/Model/model.cxx b/src/Model/model.cxx
index 84fdc229c..a71d6886d 100644
--- a/src/Model/model.cxx
+++ b/src/Model/model.cxx
@@ -229,9 +229,15 @@ fgLoad3DModel (const string &path)
   SGPropertyNode props;
 
                                 // Load the 3D aircraft object itself
-  SGPath xmlpath = globals->get_fg_root();
+  SGPath xmlpath;
   SGPath modelpath = path;
-  xmlpath.append(modelpath.str());
+  if ( path[ 0 ] == '/' || path[ 0 ] == '\\' || ( isalpha( path[ 0 ] ) && path[ 1 ] == ':' ) ) {
+    xmlpath = modelpath;
+  }
+  else {
+    xmlpath = globals->get_fg_root();
+    xmlpath.append(modelpath.str());
+  }
 
                                 // Check for an XML wrapper
   if (xmlpath.str().substr(xmlpath.str().size() - 4, 4) == ".xml") {