diff --git a/Tracking/TrkVertexFitter/TrkVertexFitters/src/AdaptiveMultiVertexFitter.cxx b/Tracking/TrkVertexFitter/TrkVertexFitters/src/AdaptiveMultiVertexFitter.cxx
index 2ff358b9996debeccdae2d03065f9572e1be7633..ec90d1b95be7e3f8deb4108c858c3217754a23fa 100755
--- a/Tracking/TrkVertexFitter/TrkVertexFitters/src/AdaptiveMultiVertexFitter.cxx
+++ b/Tracking/TrkVertexFitter/TrkVertexFitters/src/AdaptiveMultiVertexFitter.cxx
@@ -409,7 +409,8 @@ namespace Trk
     if(m_doSmoothing) {
       msg(MSG::VERBOSE) << "Now SMOOTHING!" << endmsg;
       for (std::vector<xAOD::Vertex*>::iterator iter=vtxbegin;iter!=vtxend;++iter) {   
-	m_VertexSmoother->smooth(**iter);
+	if ((*iter)->vxTrackAtVertexAvailable() && ((*iter)->vxTrackAtVertex()).size() > 0 ) 
+	  m_VertexSmoother->smooth(**iter);
       }
     } else { // TODO: I added this during xAOD migration
       for (std::vector<xAOD::Vertex*>::iterator iter=vtxbegin;iter!=vtxend;++iter) {