diff -Ncr tools_orig/qa/urlobj/export.map tools/qa/urlobj/export.map
--- tools_orig/qa/urlobj/export.map	1970-01-01 01:00:00.000000000 +0100
+++ tools/qa/urlobj/export.map	2007-06-14 16:40:41.000000000 +0200
@@ -0,0 +1,7 @@
+ UDK_3.0 {
+     global:
+         registerAllTestFunction;
+ 
+     local:
+         *;
+ };
diff -Ncr tools_orig/qa/urlobj/makefile.mk tools/qa/urlobj/makefile.mk
--- tools_orig/qa/urlobj/makefile.mk	1970-01-01 01:00:00.000000000 +0100
+++ tools/qa/urlobj/makefile.mk	2007-06-14 16:50:28.000000000 +0200
@@ -0,0 +1,72 @@
+ #*************************************************************************
+ #
+ #   OpenOffice.org - a multi-platform office productivity suite
+ #
+ #   $RCSfile: makefile.mk,v $
+ #
+ #   $Revision: 1.3 $
+ #
+ #   last change: $Author: rt $ $Date: 2005/09/08 15:49:44 $
+ #
+ #   The Contents of this file are made available subject to
+ #   the terms of GNU Lesser General Public License Version 2.1.
+ #
+ #
+ #     GNU Lesser General Public License Version 2.1
+ #     =============================================
+ #     Copyright 2005 by Sun Microsystems, Inc.
+ #     901 San Antonio Road, Palo Alto, CA 94303, USA
+ #
+ #     This library is free software; you can redistribute it and/or
+ #     modify it under the terms of the GNU Lesser General Public
+ #     License version 2.1, as published by the Free Software Foundation.
+ #
+ #     This library is distributed in the hope that it will be useful,
+ #     but WITHOUT ANY WARRANTY; without even the implied warranty of
+ #     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ #     Lesser General Public License for more details.
+ #
+ #     You should have received a copy of the GNU Lesser General Public
+ #     License along with this library; if not, write to the Free Software
+ #     Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ #     MA  02111-1307  USA
+ #
+ #*************************************************************************
+ PRJ=..$/..
+ 
+ PRJNAME=tools
+ TARGET=qa_tools_urlobj_test
+ # this is removed at the moment because we need some enhancements
+ # TESTDIR=TRUE
+ 
+ ENABLE_EXCEPTIONS=TRUE
+ 
+ # --- Settings -----------------------------------------------------
+ 
+ .INCLUDE :  settings.mk
+ 
+ # BEGIN ----------------------------------------------------------------
+ # auto generated Target:job by codegen.pl 
+ SHL1OBJS=  \
+ 	$(SLO)$/tools_urlobj_test.obj
+ 
+ SHL1TARGET= tools_urlobj
+ SHL1STDLIBS=\
+    $(SALLIB) \
+    $(CPPUNITLIB) \
+    $(TOOLSLIB)
+ 
+ SHL1IMPLIB= i$(SHL1TARGET)
+ DEF1NAME    =$(SHL1TARGET)
+ SHL1VERSIONMAP= export.map
+ # auto generated Target:job
+ # END ------------------------------------------------------------------
+ 
+ #------------------------------- All object files -------------------------------
+ # do this here, so we get right dependencies
+ # SLOFILES=$(SHL1OBJS)
+ 
+ # --- Targets ------------------------------------------------------
+ 
+ .INCLUDE :  target.mk
+ .INCLUDE : _cppunit.mk
diff -Ncr tools_orig/qa/urlobj/tools_urlobj_test.cxx tools/qa/urlobj/tools_urlobj_test.cxx
--- tools_orig/qa/urlobj/tools_urlobj_test.cxx	1970-01-01 01:00:00.000000000 +0100
+++ tools/qa/urlobj/tools_urlobj_test.cxx	2007-06-14 18:33:36.000000000 +0200
@@ -0,0 +1,191 @@
+ /*************************************************************************
+  *
+  *  OpenOffice.org - a multi-platform office productivity suite
+  *
+  *  $RCSfile: $
+  *
+  *  $Revision: $
+  *
+  *  last change: $Author: $ $Date: $
+  *
+  *  The Contents of this file are made available subject to
+  *  the terms of GNU Lesser General Public License Version 2.1.
+  *
+  *
+  *    GNU Lesser General Public License Version 2.1
+  *    =============================================
+  *    Copyright 2005 by Sun Microsystems, Inc.
+  *    901 San Antonio Road, Palo Alto, CA 94303, USA
+  *
+  *    This library is free software; you can redistribute it and/or
+  *    modify it under the terms of the GNU Lesser General Public
+  *    License version 2.1, as published by the Free Software Foundation.
+  *
+  *    This library is distributed in the hope that it will be useful,
+  *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+  *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+  *    Lesser General Public License for more details.
+  *
+  *    You should have received a copy of the GNU Lesser General Public
+  *    License along with this library; if not, write to the Free Software
+  *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+  *    MA  02111-1307  USA
+  *
+  ************************************************************************/
+ 
+ #include <cppunit/simpleheader.hxx>
+ 
+ #include <urlobj.hxx>
+ 
+ namespace tools_urlobj
+ {
+ 
+ class urlobjTest : public CppUnit::TestFixture
+ {
+ 
+ public:
+     // initialise your test code values here.
+     void setUp()
+     {
+     }
+ 
+     void tearDown()
+     {
+     }
+ 
+     // insert your test code here.
+     // this is only demonstration code
+     void urlobjTest_001()
+     {
+ 	INetURLObject aUrl(rtl::OUString::createFromAscii("file://10.10.1.1/sampledir/sample.file")); 
+ #ifdef LINUX
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("smb://10.10.1.1/sampledir/sample.file")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_SMB);
+ #endif
+ #ifdef WIN
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("file://10.10.1.1/sampledir/sample.file")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_FILE);
+ #endif
+ 	CPPUNIT_ASSERT(aUrl.GetHost(INetURLObject::NO_DECODE).compareToAscii("10.10.1.1")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetURLPath(INetURLObject::NO_DECODE).compareToAscii("/sampledir/sample.file")==0);
+ 	CPPUNIT_ASSERT(aUrl.getName().compareToAscii("sample.file")==0);
+ 	CPPUNIT_ASSERT(aUrl.getBase().compareToAscii("sample")==0);
+ 	CPPUNIT_ASSERT(aUrl.getExtension().compareToAscii("file")==0);
+     }
+ 
+     void urlobjTest_002()
+     {
+ 	INetURLObject aUrl; 
+ 	aUrl.setFSysPath(rtl::OUString::createFromAscii("\\\\137.65.170.24\\c$\\Img0001.jpg"), INetURLObject::FSYS_DETECT); 
+ #ifdef LINUX
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("smb://137.65.170.24/c$/Img0001.jpg")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_SMB);
+ #endif
+ #ifdef WIN
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("file://137.65.170.24/c$/Img0001.jpg")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_FILE);
+ #endif
+ 	CPPUNIT_ASSERT(aUrl.GetHost(INetURLObject::NO_DECODE).compareToAscii("137.65.170.24")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetURLPath(INetURLObject::NO_DECODE).compareToAscii("/c$/Img0001.jpg")==0);
+ 	CPPUNIT_ASSERT(aUrl.getName().compareToAscii("Img0001.jpg")==0);
+ 	CPPUNIT_ASSERT(aUrl.getBase().compareToAscii("Img0001")==0);
+ 	CPPUNIT_ASSERT(aUrl.getExtension().compareToAscii("jpg")==0);
+     }
+ 
+ 
+     void urlobjTest_003()
+     {
+ 	INetURLObject aUrl;
+ 	aUrl.setFSysPath(rtl::OUString::createFromAscii("\\\\hive-winxp-x86\\pmladek\\test2.odt"), INetURLObject::FSYS_DETECT); 
+ #ifdef LINUX
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("smb://hive-winxp-x86/pmladek/test2.odt")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_SMB);
+ #endif
+ #ifdef WIN
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("file://hive-winxp-x86/pmladek/test2.odt")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_FILE);
+ #endif
+ 	CPPUNIT_ASSERT(aUrl.GetHost(INetURLObject::NO_DECODE).compareToAscii("hive-winxp-x86")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetURLPath(INetURLObject::NO_DECODE).compareToAscii("/pmladek/test2.odt")==0);
+     }
+ 
+     void urlobjTest_004()
+     {
+ 	INetURLObject aUrl(rtl::OUString::createFromAscii("smb://10.10.1.1/sampledir/sample.file")); 
+ #ifdef LINUX
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("smb://10.10.1.1/sampledir/sample.file")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_SMB);
+ #endif
+ #ifdef WIN
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("file://10.10.1.1/sampledir/sample.file")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_FILE);
+ #endif
+ 	CPPUNIT_ASSERT(aUrl.GetHost(INetURLObject::NO_DECODE).compareToAscii("10.10.1.1")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetURLPath(INetURLObject::NO_DECODE).compareToAscii("/sampledir/sample.file")==0);
+ 	CPPUNIT_ASSERT(aUrl.getName().compareToAscii("sample.file")==0);
+ 	CPPUNIT_ASSERT(aUrl.getBase().compareToAscii("sample")==0);
+ 	CPPUNIT_ASSERT(aUrl.getExtension().compareToAscii("file")==0);
+     }
+ 
+     void urlobjTest_005()
+     {
+ 	INetURLObject aUrl; 
+ 	aUrl.setFSysPath(rtl::OUString::createFromAscii("//137.65.170.24/c$/Img0001.jpg"), INetURLObject::FSYS_DETECT); 
+ #ifdef LINUX
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("smb://137.65.170.24/c$/Img0001.jpg")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_SMB);
+ #endif
+ #ifdef WIN
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("file://137.65.170.24/c$/Img0001.jpg")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_FILE);
+ #endif
+ 	CPPUNIT_ASSERT(aUrl.GetHost(INetURLObject::NO_DECODE).compareToAscii("137.65.170.24")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetURLPath(INetURLObject::NO_DECODE).compareToAscii("/c$/Img0001.jpg")==0);
+ 	CPPUNIT_ASSERT(aUrl.getName().compareToAscii("Img0001.jpg")==0);
+ 	CPPUNIT_ASSERT(aUrl.getBase().compareToAscii("Img0001")==0);
+ 	CPPUNIT_ASSERT(aUrl.getExtension().compareToAscii("jpg")==0);
+     }
+ 
+ 
+     void urlobjTest_006()
+     {
+ 	INetURLObject aUrl;
+ 	aUrl.setFSysPath(rtl::OUString::createFromAscii("//hive-winxp-x86/pmladek/test2.odt"), INetURLObject::FSYS_DETECT); 
+ #ifdef LINUX
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("smb://hive-winxp-x86/pmladek/test2.odt")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_SMB);
+ #endif
+ #ifdef WIN
+ 	CPPUNIT_ASSERT(aUrl.GetMainURL(INetURLObject::NO_DECODE).compareToAscii("file://hive-winxp-x86/pmladek/test2.odt")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetProtocol()==INET_PROT_FILE);
+ #endif
+ 	CPPUNIT_ASSERT(aUrl.GetHost(INetURLObject::NO_DECODE).compareToAscii("hive-winxp-x86")==0);
+ 	CPPUNIT_ASSERT(aUrl.GetURLPath(INetURLObject::NO_DECODE).compareToAscii("/pmladek/test2.odt")==0);
+     }
+ 
+ 
+ 
+     // Change the following lines only, if you add, remove or rename 
+     // member functions of the current class, 
+     // because these macros are need by auto register mechanism.
+ 
+     CPPUNIT_TEST_SUITE(urlobjTest);
+     CPPUNIT_TEST(urlobjTest_001);
+     CPPUNIT_TEST(urlobjTest_002);
+     CPPUNIT_TEST(urlobjTest_003);
+     CPPUNIT_TEST(urlobjTest_004);
+     CPPUNIT_TEST(urlobjTest_005);
+     CPPUNIT_TEST(urlobjTest_006);
+     CPPUNIT_TEST_SUITE_END();
+ }; // class createPool
+ 
+ 
+ CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(tools_urlobj::urlobjTest, "tools_urlobj");
+ } // namespace rtl_random
+ 
+ 
+ // -----------------------------------------------------------------------------
+ 
+ // this macro creates an empty function, which will called by the RegisterAllFunctions()
+ // to let the user the possibility to also register some functions by hand.
+ NOADDITIONAL;
