14 changes: 8 additions & 6 deletions src/app/qgsmaptoolnodetool.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1164,11 +1164,12 @@ QgsFeature* SelectionFeature::feature()
void SelectionFeature::createVertexMapPolygon()
{
int y = 0;
if ( !mFeature->geometry()->asPolygon().empty() )
QgsPolygon polygon = mFeature->geometry()->asPolygon();
if ( !polygon.empty() )
{ //polygon
for ( int i2 = 0; i2 < mFeature->geometry()->asPolygon().size(); i2++ )
for ( int i2 = 0; i2 < polygon.size(); i2++ )
{
QgsPolyline poly = mFeature->geometry()->asPolygon()[i2];
const QgsPolyline& poly = polygon[i2];
int i;
for ( i = 0; i < poly.size(); i++ )
{
Expand All @@ -1191,12 +1192,13 @@ void SelectionFeature::createVertexMapPolygon()
}
else //multipolygon
{
for ( int i2 = 0; i2 < mFeature->geometry()->asMultiPolygon().size(); i2++ )
QgsMultiPolygon multiPolygon = mFeature->geometry()->asMultiPolygon();
for ( int i2 = 0; i2 < multiPolygon.size(); i2++ )
{ //iterating through polygons
QgsPolygon poly2 = mFeature->geometry()->asMultiPolygon()[i2];
const QgsPolygon& poly2 = multiPolygon[i2];
for ( int i3 = 0; i3 < poly2.size(); i3++ )
{ //iterating through polygon rings
QgsPolyline poly = poly2[i3];
const QgsPolyline& poly = poly2[i3];
int i;
for ( i = 0; i < poly.size(); i++ )
{
Expand Down
4 changes: 2 additions & 2 deletions src/app/qgsmaptoolsimplify.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ bool QgsMapToolSimplify::calculateSliderBoudaries()
bottomFound = true;
highTol = tol;
tol = ( highTol + lowTol ) / 2;
if ( doubleNear( highTol, lowTol ) )
if ( doubleNear( highTol, lowTol, 0.0001 ) ) // without 0.0001 tolerance sometimes an endless loop in epsg:4326
{ //solving problem that two points are in same distance from line, so they will be both excluded at same time
//so some time more than required count of vertices can stay
found = true;
Expand All @@ -226,7 +226,7 @@ bool QgsMapToolSimplify::calculateSliderBoudaries()
{
lowTol = tol;
tol = ( highTol + lowTol ) / 2;
if ( doubleNear( highTol, lowTol ) )
if ( doubleNear( highTol, lowTol, 0.0001 ) ) // without 0.0001 tolerance sometimes an endless loop in epsg:4326
{ //solving problem that two points are in same distance from line, so they will be both excluded at same time
//so some time more than required count of vertices can stay
found = true;
Expand Down
4 changes: 1 addition & 3 deletions src/core/symbology-ng/qgsrulebasedrendererv2.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -117,10 +117,8 @@ QgsRuleBasedRendererV2::Rule& QgsRuleBasedRendererV2::Rule::operator=( const Qgs
/////////////////////

QgsRuleBasedRendererV2::QgsRuleBasedRendererV2( QgsSymbolV2* defaultSymbol )
: QgsFeatureRendererV2( "RuleRenderer" )
: QgsFeatureRendererV2( "RuleRenderer" ), mDefaultSymbol( defaultSymbol ), mCurrentSymbol( 0 )
{
mDefaultSymbol = defaultSymbol;

// add the default rule
mRules << Rule( defaultSymbol->clone() );
}
Expand Down
1 change: 0 additions & 1 deletion src/plugins/grass/modules/v.generalize.qgm
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,5 @@
<option key="alpha" answer="1.0" advanced="yes" />
<option key="beta" answer="1.0" advanced="yes" />
<option key="iterations" answer="1" advanced="yes"/>
<option key="layer" answer="1" advanced="yes"/>
<option key="output" />
</qgisgrassmodule>
2 changes: 1 addition & 1 deletion src/plugins/grass/modules/v.what.vect.qgm
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@
<qgisgrassmodule label="Upload vector values at positions of vector points" module="v.what.vect">
<option key="vector" layeroption="layer" typemask="point"/>
<field key="column" layer="vector" type="integer,double,string"/>
<option key="qvector" layeroption="layer" typemask="area"/>
<option key="qvector" layeroption="qlayer" typemask="area"/>
<field key="qcolumn" layer="qvector" type="string"/>
</qgisgrassmodule>