Packets: Fix VariantParser invalid parser access bug
[senf.git] / Utils / Logger / AreaRegistry.cci
index fa19ed5..76e6e51 100644 (file)
@@ -1,8 +1,8 @@
 // $Id$
 //
-// Copyright (C) 2007 
-// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
-// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
+// Copyright (C) 2007
+// Fraunhofer Institute for Open Communication Systems (FOKUS)
+// Competence Center NETwork research (NET), St. Augustin, GERMANY
 //     Stefan Bund <g0dil@berlios.de>
 //
 // This program is free software; you can redistribute it and/or modify
@@ -61,6 +61,13 @@ prefix_ void senf::log::AreaRegistry::registerArea(detail::AreaBase const & area
     registry_.insert( std::make_pair(area.v_name(), &area) );
 }
 
+prefix_ senf::log::detail::AreaBase const *
+senf::log::AreaRegistry::lookup(std::string const & name)
+{
+    Registry::iterator i (registry_.find(name));
+    return i == registry_.end() ? 0 : i->second;
+}
+
 ///////////////////////////////////////////////////////////////////////////
 // senf::log::detail::AreaBase
 
@@ -81,18 +88,11 @@ prefix_ void senf::log::detail::AreaBase::init()
     senf::log::AreaRegistry::instance().registerArea(*this);
 }
 
-prefix_ unsigned senf::log::detail::AreaBase::streamLimit(StreamBase const & stream)
-    const
-{
-    return stream.index >= streamLimits_.size() ? DISABLED::value : streamLimits_[stream.index];
-}
-
-prefix_ void senf::log::detail::AreaBase::setStreamLimit(StreamBase const & stream, unsigned value)
+prefix_ unsigned senf::log::detail::AreaBase::limit(StreamBase const & stream)
     const
 {
-    if (stream.index >= streamLimits_.size())
-        streamLimits_.resize(stream.index+1,0u);
-    streamLimits_[stream.index] = value;
+    return stream.index >= routingCache_.size() ? 
+        DISABLED::value : routingCache_[stream.index].limit;
 }
 
 ///////////////////////////////cci.e///////////////////////////////////////