Bug report #14320
Qgis crashes when trying to add vector layer
| Status: | Closed | ||
|---|---|---|---|
| Priority: | Normal | ||
| Assignee: | - | ||
| Category: | Unknown | ||
| Affected QGIS version: | 2.12.1 | Regression?: | No |
| Operating System: | OS X | Easy fix?: | No |
| Pull Request or Patch supplied: | No | Resolution: | duplicate |
| Crashes QGIS or corrupts data: | No | Copied to github as #: | 22309 |
Description
If I run this script, Qgis crashes.
import os, processing
from unidecode import unidecode
import re
from qgis.core import *
from qgis.gui import *
import qgis.utils
def replaceChars(text):
text = re.sub(r"[\\s+-]", "_", text.lower())
text = re.sub(r"'", "", text)
text = re.sub(r",", "_", text)
text = unidecode(text)
return text
crs = 'EPSG:3857'
path = "/Users/cmyk/Desktop/Regionen/Frankreich/buffered"
for lay in QgsMapLayerRegistry.instance().mapLayers().values():
print(lay.name())
if lay.name() == "buffered" :
for z in lay.getFeatures():
newName = (replaceChars(z["NAME_2"]))
lay.setLayerName(newName)
processing.runalg("qgis:reprojectlayer", lay, crs, path + "/" + newName)
QgsMapLayerRegistry.instance().removeMapLayers( [lay.id()] )
layer = QgsVectorLayer(path + "/" + lay.name(), newName, "ogr")
if not layer.isValid():
print "Layer failed to load!"
Related issues
History
#1
Updated by Jürgen Fischer over 9 years ago
- Resolution set to duplicate
- Status changed from Open to Closed
QgsMapLayerRegistry.instance().removeMapLayers( [lay.id()] ) deletes the layer so lay.name() will crash. This is a duplicate of #777
#2
Updated by Jürgen Fischer about 8 years ago
- Category set to Unknown