MWS_SRX644: migrate branch mws_srx644 -> HEAD

This commit is contained in:
Jens-Heiner Rechtien
2003-03-18 13:11:43 +00:00
parent 179fc2e2e2
commit 72ef55fe37
32 changed files with 723 additions and 141 deletions

View File

@@ -0,0 +1,152 @@
/*************************************************************************
*
* $RCSfile: i_namelookup.hxx,v $
*
* $Revision: 1.2 $
*
* last change: $Author: hr $ $Date: 2003-03-18 14:11:29 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
*
* - GNU Lesser General Public License Version 2.1
* - Sun Industry Standards Source License Version 1.1
*
* Sun Microsystems Inc., October, 2000
*
* GNU Lesser General Public License Version 2.1
* =============================================
* Copyright 2000 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
*
*
* Sun Industry Standards Source License Version 1.1
* =================================================
* The contents of this file are subject to the Sun Industry Standards
* Source License Version 1.1 (the "License"); You may not use this file
* except in compliance with the License. You may obtain a copy of the
* License at http://www.openoffice.org/license.html.
*
* Software provided under this License is provided on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
* WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
* MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
* See the License for the specific provisions governing your rights and
* obligations concerning the Software.
*
* The Initial Developer of the Original Code is: Sun Microsystems, Inc.
*
* Copyright: 2000 by Sun Microsystems, Inc.
*
* All Rights Reserved.
*
* Contributor(s): _______________________________________
*
*
************************************************************************/
#ifndef ARY_IDL_I_NAMELOOKUP_HXX
#define ARY_IDL_I_NAMELOOKUP_HXX
// USED SERVICES
// BASE CLASSES
#include <ary/idl/i_language.hxx>
// COMPONENTS
// PARAMETERS
#include <ary/stdconstiter.hxx>
#include <ary/itrange.hxx>
#include <vector>
#include <map>
namespace ary
{
namespace idl
{
/* OPEN?
*/
/** @resp
This class finds all occurrences in the current language of a
name in the repository.
@descr
*/
class NameLookup
{
public:
struct NameProperties
{
NameProperties()
: nId(0),
nClass(0),
nOwner(0) {}
NameProperties(
Ce_id i_id,
RCid i_class,
Ce_id i_owner )
: nId(i_id),
nClass(i_class),
nOwner(i_owner) {}
Ce_id nId;
RCid nClass;
Ce_id nOwner;
};
/// Map from Name to NameProperties.
typedef std::multimap<String, NameProperties> Map_Names;
// LIFECYCLE
NameLookup();
~NameLookup();
// OPERATIONS
void Add_Name(
const String & i_name,
Ce_id i_id,
RCid i_class,
Ce_id i_owner );
// INQUIRY
/**
*/
bool Has_Name(
const String & i_name,
RCid i_class,
Ce_id i_owner ) const;
void Get_Names(
Dyn_StdConstIterator<Map_Names::value_type> &
o_rResult,
const String & i_name ) const;
private:
// DATA
Map_Names aNames;
};
// IMPLEMENTATION
} // namespace idl
} // namespace ary
#endif

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: ip_ce.hxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:12:10 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:29 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -97,6 +97,7 @@ namespace idl
class StructElement;
class Variable;
class NameLookup;
/** @resp
Provides the access logic for all code entities.
@@ -201,6 +202,8 @@ class CePilot
String & o_ce,
String & o_member,
const CodeEntity & i_ce ) const;
const NameLookup & NameDictionary() const;
// ACCESS
Module & GlobalNamespace();
CodeEntity & Find_Ce(
@@ -283,7 +286,6 @@ class CePilot
virtual const CodeEntity &
inq_Find_Ce(
Ce_id i_nId ) const = 0;
virtual const Module &
inq_Find_Module(
Ce_id i_nId ) const = 0;
@@ -310,6 +312,9 @@ class CePilot
String & o_ce,
String & o_member,
const CodeEntity & i_ce ) const = 0;
virtual const NameLookup &
inq_NameDictionary() const = 0;
// ACCESS
virtual Module & access_GlobalNamespace() = 0;
virtual CodeEntity &
@@ -452,6 +457,9 @@ CePilot::Get_Text( StringVector & o_module,
const CodeEntity & i_ce ) const
{ inq_Get_Text(o_module, o_ce, o_member, i_ce); }
inline const NameLookup &
CePilot::NameDictionary() const
{ return inq_NameDictionary(); }
inline Module &
CePilot::GlobalNamespace()

112
autodoc/inc/ary/itrange.hxx Normal file
View File

@@ -0,0 +1,112 @@
/*************************************************************************
*
* $RCSfile: itrange.hxx,v $
*
* $Revision: 1.2 $
*
* last change: $Author: hr $ $Date: 2003-03-18 14:11:28 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
*
* - GNU Lesser General Public License Version 2.1
* - Sun Industry Standards Source License Version 1.1
*
* Sun Microsystems Inc., October, 2000
*
* GNU Lesser General Public License Version 2.1
* =============================================
* Copyright 2000 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
*
*
* Sun Industry Standards Source License Version 1.1
* =================================================
* The contents of this file are subject to the Sun Industry Standards
* Source License Version 1.1 (the "License"); You may not use this file
* except in compliance with the License. You may obtain a copy of the
* License at http://www.openoffice.org/license.html.
*
* Software provided under this License is provided on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
* WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
* MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
* See the License for the specific provisions governing your rights and
* obligations concerning the Software.
*
* The Initial Developer of the Original Code is: Sun Microsystems, Inc.
*
* Copyright: 2000 by Sun Microsystems, Inc.
*
* All Rights Reserved.
*
* Contributor(s): _______________________________________
*
*
************************************************************************/
#ifndef ARY_ITRANGE_HXX
#define ARY_ITRANGE_HXX
// USED SERVICES
// BASE CLASSES
// COMPONENTS
// PARAMETERS
#include <utility>
namespace ary
{
template <typename ITER>
class IteratorRange
{
public:
IteratorRange(
ITER i_begin,
ITER i_end )
: itCurrent(i_begin),
itEnd(i_end)
{}
IteratorRange(
std::pair<ITER,ITER>
i_range )
: itCurrent(i_range.first),
itEnd(i_range.second)
{}
operator bool() const { return itCurrent != itEnd; }
IteratorRange & operator++() { ++itCurrent; return *this; }
ITER cur() const { return itCurrent; }
ITER end() const { return itEnd; }
private:
// DATA
ITER itCurrent;
ITER itEnd;
};
} // namespace ary
#endif

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: stdconstiter.hxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:10:43 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:28 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -73,6 +73,7 @@ namespace ary
{
template <class ELEM>
class StdConstIterator
{
public:
@@ -82,17 +83,23 @@ class StdConstIterator
const ELEM & operator*() const { return *inq_CurElement(); }
operator bool() const { return inq_CurElement() != 0; }
/// Needed as replacement for operator bool() in gcc 2.95.
bool IsValid() const { return operator bool(); }
bool IsSorted() const { return inq_IsSorted(); }
protected:
StdConstIterator() {}
private:
//Locals
virtual void do_Advance() = 0;
virtual const ELEM *
inq_CurElement() const = 0;
virtual bool inq_IsSorted() const = 0;
// Forbidden:
// StdConstIterator(const StdConstIterator<ELEM>&);
// StdConstIterator<ELEM> & operator=(const StdConstIterator<ELEM>&);
StdConstIterator(const StdConstIterator<ELEM>&);
StdConstIterator<ELEM> & operator=(const StdConstIterator<ELEM>&);
};

View File

@@ -0,0 +1,132 @@
/*************************************************************************
*
* $RCSfile: i_namelookup.cxx,v $
*
* $Revision: 1.2 $
*
* last change: $Author: hr $ $Date: 2003-03-18 14:11:31 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
*
* - GNU Lesser General Public License Version 2.1
* - Sun Industry Standards Source License Version 1.1
*
* Sun Microsystems Inc., October, 2000
*
* GNU Lesser General Public License Version 2.1
* =============================================
* Copyright 2000 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
*
*
* Sun Industry Standards Source License Version 1.1
* =================================================
* The contents of this file are subject to the Sun Industry Standards
* Source License Version 1.1 (the "License"); You may not use this file
* except in compliance with the License. You may obtain a copy of the
* License at http://www.openoffice.org/license.html.
*
* Software provided under this License is provided on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
* WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
* MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
* See the License for the specific provisions governing your rights and
* obligations concerning the Software.
*
* The Initial Developer of the Original Code is: Sun Microsystems, Inc.
*
* Copyright: 2000 by Sun Microsystems, Inc.
*
* All Rights Reserved.
*
* Contributor(s): _______________________________________
*
*
************************************************************************/
#include <precomp.h>
#include <ary/idl/i_namelookup.hxx>
// NOT FULLY DECLARED SERVICES
#include <sci_impl.hxx>
namespace ary
{
namespace idl
{
NameLookup::NameLookup()
: aNames()
{
}
NameLookup::~NameLookup()
{
}
void
NameLookup::Add_Name( const String & i_name,
Ce_id i_id,
RCid i_class,
Ce_id i_owner )
{
aNames.insert( std::pair< const String, NameProperties>(
i_name,
NameProperties( i_id,
i_class,
i_owner )));
// aNames.insert( std::make_pair( i_name,
// NameProperties( i_id,
// i_class,
// i_owner )));
}
bool
NameLookup::Has_Name( const String & i_name,
RCid i_class,
Ce_id i_owner ) const
{
IteratorRange<Map_Names::const_iterator>
aResult( aNames.equal_range(i_name) );
for ( ; BOOL_OF(aResult); ++aResult )
{
if ( (i_class == 0
OR (*aResult.cur()).second.nClass == i_class)
AND
((*aResult.cur()).second.nOwner == i_owner
OR NOT i_owner.IsValid()) )
{
return true;
}
} // end for
return false;
}
void
NameLookup::Get_Names( Dyn_StdConstIterator<Map_Names::value_type> & o_rResult,
const String & i_name ) const
{
IteratorRange<Map_Names::const_iterator>
aResult( aNames.equal_range(i_name) );
o_rResult = new SCI_MultiMap<String, NameProperties>(aResult.cur(), aResult.end());
}
} // namespace idl
} // namespace ary

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: i_reposypart.cxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:12:54 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:31 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -66,6 +66,7 @@
// NOT FULLY DEFINED SERVICES
#include <commonpart.hxx>
#include <ary/idl/i_namelookup.hxx>
#include "ii_gate.hxx"
#include "ipi_ce.hxx"
#include "ipi_type.hxx"
@@ -96,6 +97,7 @@ struct RepositoryPartition::CheshireCat
// DATA
Ce_Storage aCeStorage;
Type_Storage aTypeStorage;
NameLookup aNamesDictionary;
Dyn<CePilot_Inst> pCePilot;
Dyn<TypePilot_Inst> pTypePilot;
@@ -112,13 +114,14 @@ RepositoryPartition::
CheshireCat::CheshireCat( const n22::RepositoryCenter & i_rRepository )
: aCeStorage(),
aTypeStorage(),
aNamesDictionary(),
pCePilot(),
pTypePilot(),
pSecondariesPilot(),
pGate(),
pCenter(&i_rRepository)
{
pCePilot = new CePilot_Inst( aCeStorage );
pCePilot = new CePilot_Inst( aCeStorage, aNamesDictionary );
pTypePilot = new TypePilot_Inst( aTypeStorage, *pCePilot );
pSecondariesPilot = new SecondariesPilot_Inst( aCeStorage, aTypeStorage );
pGate = new Gate_Inst( *pCePilot, *pTypePilot, *pSecondariesPilot );

View File

@@ -2,9 +2,9 @@
#
# $RCSfile: makefile.mk,v $
#
# $Revision: 1.1 $
# $Revision: 1.2 $
#
# last change: $Author: np $ $Date: 2002-11-01 17:13:30 $
# last change: $Author: hr $ $Date: 2003-03-18 14:11:33 $
#
# The Contents of this file are made available subject to the terms of
# either of the following licenses
@@ -90,6 +90,7 @@ OBJFILES= \
$(OBJ)$/i_function.obj \
$(OBJ)$/i_interface.obj \
$(OBJ)$/i_module.obj \
$(OBJ)$/i_namelookup.obj \
$(OBJ)$/i_param.obj \
$(OBJ)$/i_property.obj \
$(OBJ)$/i_reposypart.obj \

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: nametreenode.hxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:13:44 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:34 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -209,7 +209,7 @@ template<class ITEM_ID>
inline void
NameTreeNode<ITEM_ID>::Get_Names( Dyn_StdConstIterator<ITEM_ID> & o_rResult ) const
{
o_rResult = new SCI_Map<String,item_id>(LocalNames());
o_rResult = new SCI_DataInMap<String,item_id>(LocalNames());
}

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: sci_impl.hxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:13:48 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:34 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -102,10 +102,10 @@ class SCI_Vector : public StdConstIterator<ELEM>
//************************* SCI_Vector **********************************//
//************************* SCI_Map **********************************//
template <class KEY, class VALUE>
class SCI_Map : public StdConstIterator<VALUE>
class SCI_Map : public StdConstIterator< std::map<KEY,VALUE>::value_type >
{
public:
typedef std::map<KEY,VALUE> source;
@@ -118,7 +118,36 @@ class SCI_Map : public StdConstIterator<VALUE>
private:
// Interface StdConstIterator<>:
virtual void do_Advance();
virtual const VALUE *
virtual const std::map<KEY,VALUE>::value_type *
inq_CurElement() const;
virtual bool inq_IsSorted() const;
// DATA
source_iterator itRun;
source_iterator itEnd;
};
//************************* SCI_MultiMap **********************************//
template <class KEY, class VALUE>
class SCI_MultiMap : public StdConstIterator< std::multimap<KEY,VALUE>::value_type >
{
public:
typedef std::multimap<KEY,VALUE> source;
typedef source::const_iterator source_iterator;
SCI_MultiMap(
const source & i_rSource );
SCI_MultiMap(
source_iterator i_begin,
source_iterator i_end );
virtual ~SCI_MultiMap();
private:
// Interface StdConstIterator<>:
virtual void do_Advance();
virtual const std::multimap<KEY,VALUE>::value_type *
inq_CurElement() const;
virtual bool inq_IsSorted() const;
@@ -157,6 +186,36 @@ class SCI_Set : public StdConstIterator<typename TYPES::element_type>
source_iterator itEnd;
};
//************************* SCI_DataInMap **********************************//
template <class KEY, class VALUE>
class SCI_DataInMap : public StdConstIterator<VALUE>
{
public:
typedef std::map<KEY,VALUE> source;
typedef source::const_iterator source_iterator;
SCI_DataInMap(
const source & i_rSource );
virtual ~SCI_DataInMap();
private:
// Interface StdConstIterator<>:
virtual void do_Advance();
virtual const VALUE *
inq_CurElement() const;
virtual bool inq_IsSorted() const;
// DATA
source_iterator itRun;
source_iterator itEnd;
};
//********************************************************************//
// IMPLEMENTATION
@@ -222,11 +281,11 @@ SCI_Map<KEY,VALUE>::do_Advance()
}
template <class KEY, class VALUE>
const VALUE *
const std::map<KEY,VALUE>::value_type *
SCI_Map<KEY,VALUE>::inq_CurElement() const
{
if (itRun != itEnd)
return &(*itRun).second;
return &(*itRun);
return 0;
}
@@ -242,6 +301,60 @@ SCI_Map<KEY,VALUE>::inq_IsSorted() const
template <class KEY, class VALUE>
SCI_MultiMap<KEY,VALUE>::SCI_MultiMap( const source & i_rSource )
: itRun(i_rSource.begin()),
itEnd(i_rSource.end())
{
}
template <class KEY, class VALUE>
SCI_MultiMap<KEY,VALUE>::SCI_MultiMap( source_iterator i_begin,
source_iterator i_end )
: itRun(i_begin),
itEnd(i_end)
{
}
template <class KEY, class VALUE>
SCI_MultiMap<KEY,VALUE>::~SCI_MultiMap()
{
}
template <class KEY, class VALUE>
void
SCI_MultiMap<KEY,VALUE>::do_Advance()
{
if (itRun != itEnd)
++itRun;
}
template <class KEY, class VALUE>
const std::multimap<KEY,VALUE>::value_type *
SCI_MultiMap<KEY,VALUE>::inq_CurElement() const
{
if (itRun != itEnd)
return &(*itRun);
return 0;
}
template <class KEY, class VALUE>
bool
SCI_MultiMap<KEY,VALUE>::inq_IsSorted() const
{
return true;
}
template <class ELEM>
SCI_Set<ELEM>::SCI_Set( const source & i_rSource )
: itRun(i_rSource.begin()),
@@ -284,6 +397,50 @@ SCI_Set<ELEM>::inq_IsSorted() const
template <class KEY, class VALUE>
SCI_DataInMap<KEY,VALUE>::SCI_DataInMap( const source & i_rSource )
: itRun(i_rSource.begin()),
itEnd(i_rSource.end())
{
}
template <class KEY, class VALUE>
SCI_DataInMap<KEY,VALUE>::~SCI_DataInMap()
{
}
template <class KEY, class VALUE>
void
SCI_DataInMap<KEY,VALUE>::do_Advance()
{
if (itRun != itEnd)
++itRun;
}
template <class KEY, class VALUE>
const VALUE *
SCI_DataInMap<KEY,VALUE>::inq_CurElement() const
{
if (itRun != itEnd)
return &(*itRun).second;
return 0;
}
template <class KEY, class VALUE>
bool
SCI_DataInMap<KEY,VALUE>::inq_IsSorted() const
{
return true;
}
} // namespace ary

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: cfrstd.cxx,v $
*
* $Revision: 1.4 $
* $Revision: 1.5 $
*
* last change: $Author: np $ $Date: 2002-11-14 18:01:56 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:35 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -196,7 +196,8 @@ StdFrame::LogoLink() const
const char *
StdFrame::CopyrightText() const
{
return "Copyright &copy; 2002 Sun Microsystems, Inc., 901 San Antonio Road, Palo Alto, CA 94303 USA.";
// return "Copyright &copy; 2002 Sun Microsystems, Inc., 901 San Antonio Road, Palo Alto, CA 94303 USA.";
return "Copyright &copy; 2003 Sun Microsystems, Inc.";
// return "Copyright 2001 OpenOffice.org Foundation. All Rights Reserved.";
}

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: cre_link.cxx,v $
*
* $Revision: 1.1.1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-03-08 14:45:22 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:36 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -101,28 +101,28 @@ void
LinkCreator::Display_Namespace( const ary::cpp::Namespace & i_rData )
{
Create_PrePath( i_rData );
strcat( pOut, "index.html" ); // KORR
strcat( pOut, "index.html" ); // KORR // SAFE STRCAT (#100211# - checked)
}
void
LinkCreator::Display_Class( const ary::cpp::Class & i_rData )
{
Create_PrePath( i_rData );
strcat( pOut, ClassFileName(i_rData.LocalName().c_str()) );
strcat( pOut, ClassFileName(i_rData.LocalName().c_str()) ); // SAFE STRCAT (#100211# - checked)
}
void
LinkCreator::Display_Enum( const ary::cpp::Enum & i_rData )
{
Create_PrePath( i_rData );
strcat( pOut, EnumFileName(i_rData.LocalName().c_str()) );
strcat( pOut, EnumFileName(i_rData.LocalName().c_str()) ); // SAFE STRCAT (#100211# - checked)
}
void
LinkCreator::Display_Typedef( const ary::cpp::Typedef & i_rData )
{
Create_PrePath( i_rData );
strcat( pOut, TypedefFileName(i_rData.LocalName().c_str()) );
strcat( pOut, TypedefFileName(i_rData.LocalName().c_str()) ); // SAFE STRCAT (#100211# - checked)
}
void
@@ -132,7 +132,7 @@ LinkCreator::Display_Function( const ary::cpp::Function & i_rData )
if ( i_rData.Protection() != ary::cpp::PROTECT_global )
{
strcat( pOut, "o.html" );
strcat( pOut, "o.html" ); // SAFE STRCAT (#100211# - checked)
}
else
{
@@ -143,10 +143,10 @@ LinkCreator::Display_Function( const ary::cpp::Function & i_rData )
*pOut = NULCH;
return;
}
strcat( pOut, HtmlFileName("o-", pFile->FileName().c_str()) );
strcat( pOut, HtmlFileName("o-", pFile->FileName().c_str()) ); // SAFE STRCAT (#100211# - checked)
}
strcat( pOut, OperationLink(i_rData.LocalName(), i_rData.Signature()) );
strcat( pOut, OperationLink(i_rData.LocalName(), i_rData.Signature()) ); // SAFE STRCAT (#100211# - checked)
}
void
@@ -156,7 +156,7 @@ LinkCreator::Display_Variable( const ary::cpp::Variable & i_rData )
if ( i_rData.Protection() != ary::cpp::PROTECT_global )
{
strcat( pOut, "d.html" );
strcat( pOut, "d.html" ); // SAFE STRCAT (#100211# - checked)
}
else
{
@@ -167,10 +167,10 @@ LinkCreator::Display_Variable( const ary::cpp::Variable & i_rData )
*pOut = NULCH;
return;
}
strcat( pOut, HtmlFileName("d-", pFile->FileName().c_str()) );
strcat( pOut, HtmlFileName("d-", pFile->FileName().c_str()) ); // SAFE STRCAT (#100211# - checked)
}
strcat( pOut, DataLink(i_rData.LocalName()) );
strcat( pOut, DataLink(i_rData.LocalName()) ); // SAFE STRCAT (#100211# - checked)
}
void
@@ -182,8 +182,8 @@ LinkCreator::Display_EnumValue( const ary::cpp::EnumValue & i_rData )
return;
pEnum->StoreAt(*this);
strcat(pOut, "#");
strcat(pOut, i_rData.LocalName().c_str());
strcat(pOut, "#"); // SAFE STRCAT (#100211# - checked)
strcat(pOut, i_rData.LocalName().c_str()); // SAFE STRCAT (#100211# - checked)
}
void
@@ -193,8 +193,8 @@ LinkCreator::Display_Define( const ary::cpp::Define & i_rData )
// Only valid from Index:
*pOut = '\0';
strcat(pOut, "../def-all.html#");
strcat(pOut, i_rData.DefinedName().c_str());
strcat(pOut, "../def-all.html#"); // SAFE STRCAT (#100211# - checked)
strcat(pOut, i_rData.DefinedName().c_str()); // SAFE STRCAT (#100211# - checked)
}
void
@@ -204,8 +204,8 @@ LinkCreator::Display_Macro( const ary::cpp::Macro & i_rData )
// Only valid from Index:
*pOut = '\0';
strcat(pOut, "../def-all.html#");
strcat(pOut, i_rData.DefinedName().c_str());
strcat(pOut, "../def-all.html#"); // SAFE STRCAT (#100211# - checked)
strcat(pOut, i_rData.DefinedName().c_str()); // SAFE STRCAT (#100211# - checked)
}
@@ -275,8 +275,8 @@ Recursive_CreatePath( char * o_pOut,
return; // Global Namespace
Recursive_CreatePath( o_pOut, it );
strcat( o_pOut, (*i_it).c_str() );
strcat( o_pOut, "/" );
strcat( o_pOut, (*i_it).c_str() ); // SAFE STRCAT (#100211# - checked)
strcat( o_pOut, "/" ); // SAFE STRCAT (#100211# - checked)
}
@@ -298,11 +298,11 @@ LinkCreator::Create_PrePath( const ary::CodeEntity & i_rData )
: pEnv->CurNamespace()->Id() == i_rData.Owner() )
return;
strcat( pOut, PathUp(pEnv->Depth() - 1) );
strcat( pOut, PathUp(pEnv->Depth() - 1) ); // SAFE STRCAT (#100211# - checked)
}
else
{ // Within Index
strcat( pOut, "../names/" );
strcat( pOut, "../names/" ); // SAFE STRCAT (#100211# - checked)
}
NameScope_const_iterator it( i_rData.Owner(), pEnv->Gate() );

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: hdimpl.cxx,v $
*
* $Revision: 1.3 $
* $Revision: 1.4 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:14:22 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:36 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -119,12 +119,12 @@ DisplaySlot( ary::Display & o_rDisplay,
const char *
PathUp( uintt i_nLevels )
{
static char sResult[100];
static char sResult[300];
sResult[0] = NULCH;
for ( uintt lev = 0; lev < i_nLevels; ++lev )
{
strcat( sResult, "../");
strcat( sResult, "../"); // SAFE STRCAT (#100211# - checked)
}
return sResult;
}
@@ -133,9 +133,10 @@ const char *
PathPerLevelsUp( uintt i_nLevels,
const char * i_nPathBelowDestinationLevel )
{
static char sResult[300];
strcpy( sResult, PathUp(i_nLevels) );
strcat( sResult, i_nPathBelowDestinationLevel );
static char sResult[500];
strcpy( sResult, PathUp(i_nLevels) ); // SAFE STRCPY (#100211# - checked)
// KORR_FUTURE: Make it still safer here:
strcat( sResult, i_nPathBelowDestinationLevel ); // SAFE STRCAT (#100211# - checked)
return sResult;
}
@@ -164,10 +165,11 @@ const char *
HtmlFileName( const char * i_sPrefix,
const char * i_sEntityName )
{
static char sResult[100];
strcpy( sResult, i_sPrefix );
strcat( sResult, i_sEntityName );
strcat( sResult, ".html" );
// KORR_FUTURE: Make it still safer here:
static char sResult[300];
strcpy( sResult, i_sPrefix ); // SAFE STRCPY (#100211# - checked)
strcat( sResult, i_sEntityName ); // SAFE STRCAT (#100211# - checked)
strcat( sResult, ".html" ); // SAFE STRCAT (#100211# - checked)
return sResult;
}
@@ -182,18 +184,19 @@ const char *
Path2Child( const char * i_sFileName,
const char * i_sSubDir )
{
static char sResult[200];
static char sResult[400];
if ( i_sSubDir != 0 )
{
strcpy( sResult, i_sSubDir );
strcat( sResult, "/" );
// KORR_FUTURE: Make it still safer here:
strcpy( sResult, i_sSubDir ); // SAFE STRCPY (#100211# - checked)
strcat( sResult, "/" ); // SAFE STRCAT (#100211# - checked)
}
else
{
sResult[0] = NULCH;
}
strcat( sResult, i_sFileName );
strcat( sResult, i_sFileName ); // SAFE STRCAT (#100211# - checked)
return sResult;
}
@@ -208,11 +211,12 @@ OperationLink( const udmstri & i_sOpName,
ary::OSid i_nSignature,
const char * i_sPrePath )
{
static char sResult[200];
// KORR_FUTURE: Make it still safer here:
static char sResult[500];
unsigned long nSignature = (unsigned long) i_nSignature;
sprintf( sResult, "%s#%s-%lu",
i_sPrePath, i_sOpName.c_str(), nSignature );
sprintf( sResult, "%s#%s-%lu", // SAFE SPRINTF (#100211# - checked)
i_sPrePath, i_sOpName.c_str(), nSignature );
return sResult;
}
@@ -220,10 +224,11 @@ const char *
DataLink( const udmstri & i_sLocalName,
const char * i_sPrePath )
{
static char sResult[100];
strcpy( sResult, i_sPrePath );
strcat( sResult, "#" );
strcat( sResult, i_sLocalName );
// KORR_FUTURE: Make it still safer here:
static char sResult[300];
strcpy( sResult, i_sPrePath ); // SAFE STRCPY (#100211# - checked)
strcat( sResult, "#" ); // SAFE STRCAT (#100211# - checked)
strcat( sResult, i_sLocalName ); // SAFE STRCAT (#100211# - checked)
return sResult;
}

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: html_kit.cxx,v $
*
* $Revision: 1.2 $
* $Revision: 1.3 $
*
* last change: $Author: np $ $Date: 2002-05-02 12:36:16 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:36 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -288,7 +288,7 @@ FlagTable::FlagTable( XmlElement & o_rOwner,
TableCell & rCell1 = rRow1.AddCell();
int nWidth = 100 / i_nNrOfColumns;
static char sWidth[20];
sprintf( sWidth, "%d%%", nWidth );
sprintf( sWidth, "%d%%", nWidth ); // SAFE SPRINTF (#100211# - checked)
rCell1
<< new AnAttribute( "bgcolor", "#eeeeff" )

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: pm_class.cxx,v $
*
* $Revision: 1.1.1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-03-08 14:45:24 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:36 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -416,8 +416,8 @@ const char *
PageMaker_Class::ChildListLabel( const char * i_sLabel, E_MemberProtection i_eMpr )
{
static char sResult[100];
strcpy( sResult, C_sMprPrefixes[i_eMpr] );
strcat( sResult, i_sLabel );
strcpy( sResult, C_sMprPrefixes[i_eMpr] ); // SAFE STRCPY (#100211# - checked)
strcat( sResult, i_sLabel ); // SAFE STRCAT (#100211# - checked)
return sResult;
}

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: hfi_constgroup.cxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:14:24 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:37 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -135,7 +135,8 @@ HF_IdlConstGroup::Produce_byData( const client & i_ce ) const
dyn_ce_list
dpConstants;
ary::idl::ifc_constgroup::attr::Get_Constants(dpConstants, i_ce);
if (*dpConstants)
if ( BOOL_OF(*dpConstants) )
{
produce_Members( *dpConstants,
C_sList_Constants,

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: hfi_enum.cxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:14:27 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:37 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -133,7 +133,7 @@ HF_IdlEnum::Produce_byData( const client & i_ce ) const
dyn_ce_list
dpValues;
ary::idl::ifc_enum::attr::Get_Values(dpValues, i_ce);
if (*dpValues)
if ( BOOL_OF(*dpValues) )
{
produce_Members( *dpValues,
C_sList_Values,

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: hfi_interface.cxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:14:31 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:37 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -162,7 +162,7 @@ HF_IdlInterface::Produce_byData( const client & i_ce ) const
dyn_ce_list dpFunctions;
ary::idl::ifc_interface::attr::Get_Functions(dpFunctions, i_ce);
if ( *dpFunctions )
if ( BOOL_OF(*dpFunctions) )
{
eCurProducedMembers = mem_Functions;
@@ -178,7 +178,7 @@ HF_IdlInterface::Produce_byData( const client & i_ce ) const
dyn_ce_list
dpAttributes;
ary::idl::ifc_interface::attr::Get_Attributes(dpAttributes, i_ce);
if (*dpAttributes)
if ( BOOL_OF(*dpAttributes) )
{
eCurProducedMembers = mem_Attributes;

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: hfi_method.cxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:14:35 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:38 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -140,7 +140,7 @@ HF_IdlMethod::write_Declaration( const String & i_sName,
types = aDecl.Types();
Xml::Element &
names = aDecl.Names();
bool bParams = bool(i_rParams);
bool bParams = bool( BOOL_OF(i_rParams) );
if (bParams)
{
front
@@ -168,7 +168,7 @@ HF_IdlMethod::write_Declaration( const String & i_sName,
<< "()";
if (i_rExceptions)
if ( BOOL_OF(i_rExceptions) )
{
Xml::Element &
rExcOut = aDecl.Add_RaisesLine("raises", NOT bParams);

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: hfi_service.cxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:14:40 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:38 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -155,7 +155,7 @@ HF_IdlService::Produce_byData( const client & i_ce ) const
dyn_comref_list
dpIncludedServices;
ServiceAttr::Get_IncludedServices(dpIncludedServices, i_ce);
if (*dpIncludedServices)
if ( BOOL_OF(*dpIncludedServices) )
{
produce_IncludedServices( i_ce, *dpIncludedServices );
pNaviSubRow->SwitchOn(sli_IncludedServices);
@@ -164,7 +164,7 @@ HF_IdlService::Produce_byData( const client & i_ce ) const
dyn_comref_list
dpExportedInterfaces;
ServiceAttr::Get_ExportedInterfaces(dpExportedInterfaces, i_ce);
if (*dpExportedInterfaces)
if ( BOOL_OF(*dpExportedInterfaces) )
{
produce_ExportedInterfaces( i_ce, *dpExportedInterfaces );
pNaviSubRow->SwitchOn(sli_ExportedInterfaces);
@@ -173,7 +173,7 @@ HF_IdlService::Produce_byData( const client & i_ce ) const
dyn_ce_list
dpProperties;
ServiceAttr::Get_Properties(dpProperties, i_ce);
if (*dpProperties)
if ( BOOL_OF(*dpProperties) )
{
produce_Members( *dpProperties,
C_sList_Properties,
@@ -218,7 +218,7 @@ HF_IdlService::produce_IncludedServices( const client & i_ce,
C_sList_IncludedServices,
2 );
for ( ; it_list; ++it_list )
for ( ; BOOL_OF(it_list); ++it_list )
{
Xml::Element &
rRow = aTable.Add_Row();

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: hfi_struct.cxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:14:43 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:38 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -159,7 +159,7 @@ HF_IdlStruct::Produce_byData( const client & i_ce ) const
else
ary::idl::ifc_struct::attr::Get_Elements(dpElements, i_ce);
if (*dpElements)
if ( BOOL_OF(*dpElements) )
{
produce_Members( *dpElements,
C_sList_Elements,

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: hi_ary.hxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:14:51 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:38 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -86,6 +86,8 @@ namespace output
class Position;
}
/** A helper class to wrap the access to data in the Autodoc Repository.
*/
class AryAccess
{
public:

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: hi_factory.cxx,v $
*
* $Revision: 1.3 $
* $Revision: 1.4 $
*
* last change: $Author: np $ $Date: 2002-11-15 10:35:32 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:38 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -176,7 +176,7 @@ HtmlFactory_Idl::produce_Members( ce_list & it_list,
i_detailsTitle,
1 );
for ( ; it_list; ++it_list )
for ( ; BOOL_OF(it_list); ++it_list )
{
const ary::idl::CodeEntity &
rCe = Env().Data().Find_Ce(*it_list);

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: adc_cmd_parse.cxx,v $
*
* $Revision: 1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-11-14 18:02:00 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:39 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: cmd_run.cxx,v $
*
* $Revision: 1.5 $
* $Revision: 1.6 $
*
* last change: $Author: np $ $Date: 2002-11-14 18:02:01 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:40 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses

View File

@@ -2,9 +2,9 @@
#
# $RCSfile: makefile.mk,v $
#
# $Revision: 1.7 $
# $Revision: 1.8 $
#
# last change: $Author: rt $ $Date: 2002-12-11 15:41:34 $
# last change: $Author: hr $ $Date: 2003-03-18 14:11:40 $
#
# The Contents of this file are made available subject to the terms of
# either of the following licenses
@@ -75,6 +75,7 @@ PRJINC=$(PRJ)$/source
.INCLUDE : $(PRJ)$/source$/mkinc$/fullcpp.mk
UWINAPILIB=$(0)
LIBSALCPPRT=$(0)
# --- Files --------------------------------------------------------

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: precomp.h,v $
*
* $Revision: 1.1.1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-03-08 14:45:27 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:40 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -117,13 +117,9 @@ inline csv::F_FLUSHING_FUNC
Flush() { return csv::Flush; }
// Backwardscompatibility:
template <class DELI>
inline void Delete_dyn( DELI * & pObj )
{ delete pObj; pObj = 0; }
// Hack for GCC 2.95:
template <class XY>
inline bool BOOL_OF(const XY & x) { return x.operator bool(); }
#endif

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: cx_c_pp.cxx,v $
*
* $Revision: 1.1.1.1 $
* $Revision: 1.2 $
*
* last change: $Author: np $ $Date: 2002-03-08 14:45:29 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:41 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -180,8 +180,9 @@ Context_PP_MacroParams::ReadCharChain( CharacterSource & io_rText )
char cSeparator = jumpTo( io_rText, ',', ')' );
csv_assert( cSeparator != 0 );
static char cBuf[100];
strcpy( cBuf, io_rText.CutToken() );
static char cBuf[500];
// KORR_FUTURE, make it still safer, here:
strcpy( cBuf, io_rText.CutToken() ); // SAFE STRCPY (#100211# - checked)
for ( uintt nLen = strlen(cBuf);
nLen > 0 AND cBuf[nLen-1] < 33;
--nLen )

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: parsenv2.cxx,v $
*
* $Revision: 1.4 $
* $Revision: 1.5 $
*
* last change: $Author: np $ $Date: 2002-11-14 18:02:05 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:41 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -137,6 +137,12 @@ UnoIDL_PE::Leave( E_EnvStackAction i_eWayOfLeaving )
} // end switch
}
void
UnoIDL_PE::SetDocu( DYN ary::info::CodeInformation * let_dpDocu )
{
pDocu = let_dpDocu;
}
void
UnoIDL_PE::SetOptional()
{

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: pe_type2.cxx,v $
*
* $Revision: 1.2 $
* $Revision: 1.3 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:15:41 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:41 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -243,7 +243,5 @@ PE_Type::MyPE()
} // namespace uidl
} // namespace csi
void
DeleteDyn(csi::uidl::PE_Type * i_pObj)
{ delete i_pObj; }

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: parsenv2.hxx,v $
*
* $Revision: 1.3 $
* $Revision: 1.4 $
*
* last change: $Author: np $ $Date: 2002-11-01 17:15:46 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:42 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -133,8 +133,7 @@ class UnoIDL_PE : virtual protected TokenProcessing_Types
void SetDocu(
DYN ary::info::CodeInformation *
let_dpDocu )
{ pDocu = let_dpDocu; }
let_dpDocu );
void SetOptional();
void PassDocuAt(
ary::idl::CodeEntity &

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: filecoll.cxx,v $
*
* $Revision: 1.4 $
* $Revision: 1.5 $
*
* last change: $Author: np $ $Date: 2002-11-14 18:02:06 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:43 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -91,7 +91,7 @@ FileCollector::AddFilesFrom( const char * i_sRootDir,
csv::ploc::Directory aDir(i_sRootDir);
if (NOT aDir.Exists())
{
Cerr() << "Error: The path for the files to be parsed could not be found."
Cerr() << "Warning: The path for the files to be parsed could not be found."
<< Endl();
return 0;
}

View File

@@ -2,9 +2,9 @@
*
* $RCSfile: tkpchars.cxx,v $
*
* $Revision: 1.2 $
* $Revision: 1.3 $
*
* last change: $Author: np $ $Date: 2002-05-14 09:02:21 $
* last change: $Author: hr $ $Date: 2003-03-18 14:11:43 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -113,7 +113,7 @@ CharacterSource::LoadText( const char * i_sSourceText )
nSourceSize = strlen(i_sSourceText);
dpSource = new char[nSourceSize+1];
strcpy( dpSource, i_sSourceText);
strcpy( dpSource, i_sSourceText); // SAFE STRCPY (#100211# - checked)
BeginSource();
}
@@ -135,7 +135,7 @@ CharacterSource::InsertTextAtCurPos( const char * i_sText2Insert )
nSourceSize = strlen(i_sText2Insert);
dpSource = new char[nSourceSize+1];
strcpy( dpSource, i_sText2Insert);
strcpy( dpSource, i_sText2Insert); // SAFE STRCPY (#100211# - checked)
BeginSource();
}