padOsd: strengthen ring/strip label creation
If the padOsd is given a nonexistent ring/strip, things would fail badly later when trying to paint a 0x0 StLabel. Just avoid creating more ring/strip labels than those known by libwacom. This is unlikely to happen, but seems better to protect against it. https://bugzilla.gnome.org/show_bug.cgi?id=782033
This commit is contained in:
parent
44908cf470
commit
7f693ed2c4
@ -685,11 +685,17 @@ const PadOsd = new Lang.Class({
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < padDevice.get_n_rings(); i++) {
|
for (i = 0; i < padDevice.get_n_rings(); i++) {
|
||||||
|
let [found] = this._padDiagram.getRingLabelCoords(i, CW);
|
||||||
|
if (!found)
|
||||||
|
break;
|
||||||
this._createLabel(Meta.PadActionType.RING, i, CW);
|
this._createLabel(Meta.PadActionType.RING, i, CW);
|
||||||
this._createLabel(Meta.PadActionType.RING, i, CCW);
|
this._createLabel(Meta.PadActionType.RING, i, CCW);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < padDevice.get_n_strips(); i++) {
|
for (i = 0; i < padDevice.get_n_strips(); i++) {
|
||||||
|
let [found] = this._padDiagram.getStripLabelCoords(i, UP);
|
||||||
|
if (!found)
|
||||||
|
break;
|
||||||
this._createLabel(Meta.PadActionType.STRIP, i, UP);
|
this._createLabel(Meta.PadActionType.STRIP, i, UP);
|
||||||
this._createLabel(Meta.PadActionType.STRIP, i, DOWN);
|
this._createLabel(Meta.PadActionType.STRIP, i, DOWN);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user