diff --git a/include/boost/graph/connected_components.hpp b/include/boost/graph/connected_components.hpp
index 2f7d1b3a..98f9ce42 100644
--- a/include/boost/graph/connected_components.hpp
+++ b/include/boost/graph/connected_components.hpp
@@ -76,6 +76,8 @@ namespace boost {
connected_components(const Graph& g, ComponentMap c,
const bgl_named_params
& params)
{
+ if (num_vertices(g) == 0) return 0;
+
typedef typename graph_traits::vertex_descriptor Vertex;
function_requires< WritablePropertyMapConcept >();
typedef typename boost::graph_traits::directed_category directed;
@@ -93,6 +95,8 @@ namespace boost {
inline typename property_traits::value_type
connected_components(const Graph& g, ComponentMap c)
{
+ if (num_vertices(g) == 0) return 0;
+
typedef typename graph_traits::vertex_descriptor Vertex;
function_requires< WritablePropertyMapConcept >();
typedef typename boost::graph_traits::directed_category directed;