Commit Graph

59 Commits

Author SHA1 Message Date
Robert Osfield
16d844090f From Joan Abadie: patch fixes : "osgDB::makeDirectory doesn't work on win32 when using full path name like : "d:/demo"
it tryes a mkdir("d:")."
2006-06-08 11:22:45 +00:00
Robert Osfield
1c83e3ecfb From Ed Ralston, "According to the OSX Developer Documentation, CFRelease
cannot be called with a NULL argument.

This patch prevents osgDB::FileUtils from doing this."
2006-02-20 16:20:50 +00:00
Robert Osfield
fe1536ebd6 Fixed compile warnings. 2005-10-24 13:46:31 +00:00
Robert Osfield
b9a74c87e1 From Jeremy Bell,
"My patch is a slight refactoring of the mac specific code in
Registry.cpp and FileUtils.cpp, specifically around the library and
resource file path initilialization methods. This patch cleans up a
lot of the mac specific code by moving repeated code into separate
local functions in FileUtils.cpp that are only compiled on mac builds.
It also adds one function to the API,
appendPlatformSpecificResourceFilePaths in FileUtils. This function
will mirror the already existing
appendPlatformSpecificLibraryFilePaths except for resource file paths.
Currently this function is empty except when built on the mac, in
which case it will add the application bundle's internal Resources
folder and the bundle's parent folder. Previously this code was
implemented as a separate mac specific #ifdef block in Registry.cpp
around the initDataFilePathList method. However, it now is implemented
in appendPlatformSpecificResourceFilePaths in FileUtils.cpp and the
initDataFilePathList method is now the same on all platforms. This
patch should behave the same as before on non-mac platforms.

This patch already includes the fix that Eric mentioned earlier. This
patch is based off of the 0.99 release code. I have tested this patch
using the following testing scheme:

Make a proper bundled application.
While Run from the Finder:
   Test that it finds plugins in its internal plugins path.
   Test that it finds resources in its internal resources path.
   Test that it finds resources in the bundle's parent directory
   Test that it finds plugins in the user's Application Support Directory
   Test that it finds plugins in the system's Application Support Directory
   Test that it finds plugins in the Network Application Support Directory
   Check the plugin and resource path lists after they have been
initialized to see if they are in the correct order

While Run from the command line (both from it's parent directory and
from inside the /Contents/MacOS directory) and repeat the above tests.
Check that it also finds plugins and resources within the paths
defined by various environment variables.

Now, Make an application that is NOT bundled/command line only
   Test that it does NOT try to look in an internal bundle
plugin/resource directory for plugins or resources.
   Test that it finds plugins/resources in the paths defined by the
environment variables.
"
2005-07-26 21:07:31 +00:00
Robert Osfield
07af23e280 From Eric Wing, fix to be able to handle "spacial" characters under OSX. 2005-07-26 20:31:43 +00:00
Robert Osfield
80a99a2559 From Ken Sewell, fixed for x86_64 build. 2005-06-13 11:14:42 +00:00
Robert Osfield
678b22ce83 Updated Copyright notices to 1998-2005. 2005-04-14 21:41:28 +00:00
Robert Osfield
dd0c29d19b Added new utilities for handling different '/' and '\' entries. 2005-02-11 09:58:30 +00:00
Robert Osfield
ce07879e2e Moved plugins across to using ReaderWriter::Options* for search paths in addition
to standard osgDB::DataFilePaths
2004-11-22 23:54:45 +00:00
Robert Osfield
a6369da4f4 Moved Registry::CacheHintOptions into ReaderWriter::Options 2004-11-22 14:10:12 +00:00
Robert Osfield
d748664df6 From John Shue, fix for FreeBSD. 2004-11-20 10:36:16 +00:00
Robert Osfield
5baebab14c Removed old and used FileUtils_Mac.cpp 2004-11-18 16:25:14 +00:00
Robert Osfield
595dda6fe4 From Vivek Rajan, fixes to Solaris build. 2004-11-18 10:08:29 +00:00
Robert Osfield
7ddb8ed87f Added Cygwin to #define stat64 stat path. 2004-11-14 20:00:30 +00:00
Don BURNS
f883db6315 Added fix for MAC for FileUtils.cpp: stat64 is not present on Mac. 2004-10-09 15:00:34 +00:00
Robert Osfield
b0d8ca535d Changed _stat64 to _stati64 2004-10-05 07:08:02 +00:00
Robert Osfield
3d0fc966a2 Checked in #define mapping of stat64 to _stat64 to fix Windows build 2004-10-03 19:49:27 +00:00
Robert Osfield
60cb89486f Solution of fileExists support for > 2Gb files from Ken Sewell, applied by Robert Osfield. 2004-10-03 08:50:56 +00:00
Robert Osfield
a2f88b6e08 Commented out osg::noitfy usage under OSX since this was causing a crash on start up 2004-09-14 15:05:16 +00:00
Robert Osfield
506c5a6743 Added usage of carbon pathway in appendPlatformSpecificLibraryFilePaths. 2004-09-02 10:01:24 +00:00
Robert Osfield
ac6d25a840 Added Don's new osgDB::makeDirectory() code FileUtils. 2004-09-01 14:49:18 +00:00
Don BURNS
3e74db50e5 Changes for IRIX build and fix to build system 2004-08-28 23:04:47 +00:00
Robert Osfield
f2f1543a88 Fix of OSX build 2004-08-27 16:52:23 +00:00
Robert Osfield
617f6d4585 Fix for OSX build. 2004-08-27 16:19:05 +00:00
Robert Osfield
255c27d552 Added a new osgDB::appendPlatformSpecificLibraryFilePaths() method to FileUtils.cpp
Includes a new OSX code from Eric Wing
2004-08-27 16:14:21 +00:00
Robert Osfield
642253b731 From Bruce Clay, cross platform implemention of fileType(..) 2004-05-13 13:37:55 +00:00
Robert Osfield
f4a290cdff From Donny Cipperly, completed Windows support for fileType() 2004-05-13 08:11:31 +00:00
Robert Osfield
35c6632cfd From Mike Weiblen, Fixes for Win32 build 2004-05-09 06:29:54 +00:00
Robert Osfield
3d3199017e From Ken Sewel, added osgDB::fileType(filename) method and usage of this
new function in osgdem to automatcally handle directories as part of the
regular -d and -t options.
2004-05-08 06:35:32 +00:00
Robert Osfield
bd37f999c4 From Bob Kuehne, change on __DARWIN_OSX__ define to __APPLE__ 2004-03-08 11:02:05 +00:00
Robert Osfield
83bf813e58 Moved the responsibility for finding file to load on to the ReaderWriter plugins,
instead of osgDB::Registry where it original lay.  This has been done to allow
fileName strings to be encode data rather than just file names, such as one
requires when using PagedLOD along with plugins for doing dynamic tesselation.
2003-12-08 11:24:43 +00:00
Robert Osfield
78a0fd5a16 Added support for case insenstive searches of the filepaths. 2003-11-25 09:04:41 +00:00
Don BURNS
b7eeeea8d1 Fixed loading of dynamic libraries with dlopen if the library is
in the current directory
2003-11-06 04:08:53 +00:00
Robert Osfield
fa8a06990d From Trajce Nikolov, support for use of PagedLOD in the txp plugin. 2003-10-19 11:46:34 +00:00
Robert Osfield
48bda9cc79 Added new Copyright/License notice to header and source files. 2003-01-21 16:45:36 +00:00
Robert Osfield
f55233b20d Updates from Bob Kuehne and Kristopher Bixler to remove the fink
dependency from the MacOSX build.
2002-07-16 19:21:31 +00:00
Robert Osfield
1ceb0b60a8 Fixes for Cygwin build from Norman Vine. 2002-06-25 20:47:42 +00:00
Robert Osfield
aa58ecae2f Clean ups for the Windows build. 2002-06-18 10:18:12 +00:00
Robert Osfield
6767dd49d0 Rewrote the FileUtils support for data and library file paths, moving the
storage of the path lists into osgDB::Registry, and changed the data
structor from a char* to a std::deque.  Changed a names of couple of the
convinience functions in osgDB/FileUtils to better reflect the two
public FilePathList's - DataFilePathList and the LibraryFilePathList.

Added support into the osgDB::Registry::readNode/Image/Object methods
for pushing and popping the path of the current file being loaded.
2002-06-17 21:50:37 +00:00
Robert Osfield
3668c050da Seperated out the platform specific implementions of the file search/access
routines - we now have FileUtils_Windows.cpp, FileUtils_Mac.cpp and
FileUtils_Unix.cpp.  The FileUtils_Mac.cpp is based on code submitted
by Josh Portway and add uses the carbon API for searching for files.
2002-04-23 13:59:01 +00:00
Robert Osfield
77ae5ddcb6 Updates to various files, replacing delete calls with osgDelete so that
greater debugging info can be gleaned.
2002-03-27 14:56:47 +00:00
Robert Osfield
84d2d01163 Added support for osg::MemoryManager which is based upon Paul Nettle's
memory manager published at flipcode.com.  This can be turned on
with the OSG_USE_MEMORY_MANGER option which then uses custom global
new and delete operators as well as provide osgNew and osgDelete macro's
which add ability to log line and file from which calls are made.

Updated osg,osgUtil,osgDB,osgText and osgPlugins/osg to use osgNew/osgDelete,
and fixed memory leaks highlighted by the new memory manager.
2002-03-26 23:52:52 +00:00
Robert Osfield
0610d76c6a Fix of a delete char array so it used delete []. 2002-03-14 23:19:58 +00:00
Don BURNS
8b15a1f835 Fixed a problem for finding MIPS 64 bit libraries. Was seaching for
LD_LIBRARYN32_PATH instead of LD_LIBRARY64_PATH
2002-03-14 20:29:05 +00:00
Robert Osfield
ed45cccc25 Fixes for cygwin and mingw builds. 2002-02-09 10:24:39 +00:00
Robert Osfield
ab45bdf214 Fix for Win32 build. 2002-02-07 01:17:54 +00:00
Robert Osfield
95fb921953 Compile fixes. 2002-02-06 08:57:06 +00:00
Robert Osfield
d69c38f0ed Changed hardwired char[1024] arrays to char[FILEUTILS_MAX_PATH_LENGTH] and
defined the value to be 2048, this should avoid problems with path lengths
which have been overflowing the 1024 limit (Sasa report this bug). The
real solution is to use std::string throught FileUtils, but this will have
to wait for another day.
2002-01-16 12:03:29 +00:00
Robert Osfield
e3ad8a87ee Updates for Cygwin port, from Norman Vine. 2002-01-03 21:34:57 +00:00
Robert Osfield
7b7319f998 Added /usr/local/lib to the s_default_dso_path search path for plugins. 2001-12-30 19:04:46 +00:00