diff --git a/sal/inc/internal/once.h b/sal/inc/internal/once.h deleted file mode 100644 index 45f9c37a8113..000000000000 --- a/sal/inc/internal/once.h +++ /dev/null @@ -1,82 +0,0 @@ -/* -*- 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 - * - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - -#ifndef INCLUDED_SAL_INTERNAL_ONCE_H -#define INCLUDED_SAL_INTERNAL_ONCE_H - -/** sal_once_type - * (platform dependent) - */ - -#if defined(SAL_UNX) - -#include - -typedef pthread_once_t sal_once_type; - -#define SAL_ONCE_INIT PTHREAD_ONCE_INIT -#define SAL_ONCE(once, init) pthread_once((once), (init)) - -#elif defined(SAL_W32) - -#define WIN32_LEAN_AND_MEAN -#pragma warning(push,1) /* disable warnings within system headers */ -#include -#pragma warning(pop) - -typedef struct sal_once_st sal_once_type; -struct sal_once_st -{ - LONG volatile m_done; - LONG volatile m_lock; -}; - -#define SAL_ONCE_INIT { 0, 0 } -#define SAL_ONCE(once, init) \ -{ \ - sal_once_type * control = (once); \ - if (!(control->m_done)) \ - { \ - while (InterlockedExchange(&(control->m_lock), 1) == 1) Sleep(0); \ - if (!(control->m_done)) \ - { \ - void (*init_routine)(void) = (init); \ - (*init_routine)(); \ - control->m_done = 1; \ - } \ - InterlockedExchange(&(control->m_lock), 0); \ - } \ -} - -#else -#error Unknown platform -#endif /* SAL_UNX | SAL_W32 */ - -#endif /* INCLUDED_SAL_INTERNAL_ONCE_H */ - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sal/rtl/source/alloc_arena.cxx b/sal/rtl/source/alloc_arena.cxx index 20ee962d55c5..03c7f475d10a 100644 --- a/sal/rtl/source/alloc_arena.cxx +++ b/sal/rtl/source/alloc_arena.cxx @@ -30,7 +30,6 @@ #include "alloc_arena.hxx" #include "alloc_impl.hxx" -#include "internal/once.h" #include "internal/rtllifecycle.h" #include "sal/macros.h" #include "osl/diagnose.h" diff --git a/sal/rtl/source/alloc_cache.cxx b/sal/rtl/source/alloc_cache.cxx index a1d8d5490961..0769b8e68a29 100644 --- a/sal/rtl/source/alloc_cache.cxx +++ b/sal/rtl/source/alloc_cache.cxx @@ -29,7 +29,6 @@ #include "alloc_cache.hxx" #include "alloc_impl.hxx" #include "alloc_arena.hxx" -#include "internal/once.h" #include "internal/rtllifecycle.h" #include "sal/macros.h" #include "osl/diagnose.h" diff --git a/sal/rtl/source/alloc_global.cxx b/sal/rtl/source/alloc_global.cxx index e48fdd1072c7..c0de49659754 100644 --- a/sal/rtl/source/alloc_global.cxx +++ b/sal/rtl/source/alloc_global.cxx @@ -51,7 +51,6 @@ static void determine_alloc_mode() * * ================================================================= */ -#include "internal/once.h" #include "sal/macros.h" /* ================================================================= * diff --git a/sal/rtl/source/locale.cxx b/sal/rtl/source/locale.cxx index 1d975ad6fd6b..885b139c3945 100644 --- a/sal/rtl/source/locale.cxx +++ b/sal/rtl/source/locale.cxx @@ -31,7 +31,6 @@ #include "osl/diagnose.h" #include "rtl/alloc.h" -#include "internal/once.h" #include "internal/rtllifecycle.h" static sal_Int32 RTL_HASHTABLE_SIZE[] =