office-gobmx/shell/source/win32/ooofilereader/basereader.cxx
Tor Lillqvist c3b5c166b9 Make a dbgutil build of the Explorer extension succeed
Take notice of USE_DEBUG_RUNTIME also in set_wntx64.mk.

Don't unset USE_DEBUG_RUNTIME and don't hardcode the non-debugging
msvcprt.lib when building the Explorer extension.

Undefine OSL_DEBUG_LEVEL in its source files that would otherwise drag
in the diagnosing functions from sal. We don't link the Explorer
extension with sal.

As such it might not make much sense to actually *use* a shell
extension built with assertions in the C++ library, against the
debugging C/C++ runtime. You don't want assertions to fire in
Explorer, do you? On the other hand, one could be debugging an
Explorer extension remotely. Maybe even locally, I don't know if some
lower levels of Windows get upset if Explorer is unresponsive due to
being debugged, or something.

But anyway, the main point for now is to make an --enable-dbgutil
build succeed.

Alternatively we could also make sure USE_DEBUG_RUNTIME is unset in
*all* makefiles in shell.
2011-08-22 23:35:19 +03:00

104 lines
2.7 KiB
C++

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Copyright 2000, 2010 Oracle and/or its affiliates.
*
* OpenOffice.org - a multi-platform office productivity suite
*
* This file is part of OpenOffice.org.
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* OpenOffice.org 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 version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
*
************************************************************************/
#undef OSL_DEBUG_LEVEL
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_shell.hxx"
#include <osl/diagnose.h>
#include "internal/basereader.hxx"
#include "internal/xml_parser.hxx"
#include "assert.h"
#include <memory>
/** constructor of CBaseReader.
*/
CBaseReader::CBaseReader(const std::string& DocumentName):
m_ZipFile( DocumentName )
{
}
//------------------------------
CBaseReader::CBaseReader(void * sw, zlib_filefunc_def* fa):
m_ZipFile( sw , fa )
{
}
//------------------------------
CBaseReader::~CBaseReader()
{
}
//------------------------------
void CBaseReader::start_document()
{
}
//------------------------------
void CBaseReader::end_document()
{
}
/** Read interested tag content into respective structure then start parsing process.
@param ContentName
the xml file name in the zipped document which we interest.
*/
void CBaseReader::Initialize( const std::string& ContentName)
{
try
{
if (m_ZipContent.empty())
m_ZipFile.GetUncompressedContent( ContentName, m_ZipContent );
xml_parser parser;
parser.set_document_handler(this); // pass current reader as reader to the sax parser
parser.parse(&m_ZipContent[0], m_ZipContent.size());
}
catch(std::exception&
#if OSL_DEBUG_LEVEL > 0
ex
#endif
)
{
OSL_ENSURE( false, ex.what() );
}
catch(...)
{
OSL_ENSURE(false, "Unknown error");
}
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */