mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
NPE fixes
This commit is contained in:
@@ -85,6 +85,7 @@ public class DirDiffPanel {
|
||||
}
|
||||
else {
|
||||
final DirDiffElement element = myModel.getElementAt(myTable.getSelectedRow());
|
||||
if (element == null) return;
|
||||
final Project project = myModel.getProject();
|
||||
clearDiffPanel();
|
||||
if (element.getType() == DType.CHANGED) {
|
||||
@@ -120,18 +121,24 @@ public class DirDiffPanel {
|
||||
int row = myTable.getSelectedRow();
|
||||
if (keyCode == KeyEvent.VK_DOWN && row != rows - 1) {
|
||||
row++;
|
||||
if (myModel.getElementAt(row).isSeparator()) {
|
||||
final DirDiffElement element = myModel.getElementAt(row);
|
||||
if (element == null) return;
|
||||
if (element.isSeparator()) {
|
||||
row++;
|
||||
}
|
||||
} else if (keyCode == KeyEvent.VK_UP && row != 0) {
|
||||
row--;
|
||||
if (myModel.getElementAt(row).isSeparator()) {
|
||||
final DirDiffElement element = myModel.getElementAt(row);
|
||||
if (element == null) return;
|
||||
if (element.isSeparator()) {
|
||||
row--;
|
||||
}
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
if (0 <= row && row < rows && !myModel.getElementAt(row).isSeparator()) {
|
||||
final DirDiffElement element = myModel.getElementAt(row);
|
||||
if (element == null) return;
|
||||
if (!element.isSeparator()) {
|
||||
e.consume();
|
||||
myTable.changeSelection(row, (myModel.getColumnCount() - 1) / 2, false, false);
|
||||
}
|
||||
|
||||
@@ -120,6 +120,7 @@ public class DirDiffTableModel extends AbstractTableModel {
|
||||
return "Diff for " + mySrc.getPath() + " and " + myTrg.getPath();
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public DirDiffElement getElementAt(int index) {
|
||||
return 0 <= index && index < myElements.size() ? myElements.get(index) : null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user