Index: src/app/qgsmaptoolidentify.cpp =================================================================== --- src/app/qgsmaptoolidentify.cpp (revision 13422) +++ src/app/qgsmaptoolidentify.cpp (working copy) @@ -295,7 +295,7 @@ convertMeasurement( calc, dist, myDisplayUnits, false ); QString str = calc.textUnit( dist, 3, myDisplayUnits, false ); // dist and myDisplayUnits are out params derivedAttributes.insert( tr( "Length" ), str ); - if ( f_it->geometry()->wkbType() == QGis::WKBLineString ) + if ( f_it->geometry()->wkbType() == QGis::WKBLineString || f_it->geometry()->wkbType() == QGis::WKBLineString25D ) { // Add the start and end points in as derived attributes str = QLocale::system().toString( f_it->geometry()->asPolyline().first().x(), 'g', 10 ); @@ -319,11 +319,14 @@ else if ( layer->geometryType() == QGis::Point ) { // Include the x and y coordinates of the point as a derived attribute - QString str; - str = QLocale::system().toString( f_it->geometry()->asPoint().x(), 'g', 10 ); - derivedAttributes.insert( "X", str ); - str = QLocale::system().toString( f_it->geometry()->asPoint().y(), 'g', 10 ); - derivedAttributes.insert( "Y", str ); + if ( f_it->geometry()->wkbType() == QGis::WKBPoint || f_it->geometry()->wkbType() == QGis::WKBPoint25D) + { + QString str; + str = QLocale::system().toString( f_it->geometry()->asPoint().x(), 'g', 10 ); + derivedAttributes.insert( "X", str ); + str = QLocale::system().toString( f_it->geometry()->asPoint().y(), 'g', 10 ); + derivedAttributes.insert( "Y", str ); + } } derivedAttributes.insert( tr( "feature id" ), fid < 0 ? tr( "new feature" ) : QString::number( fid ) );