mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-15 20:25:46 +02:00
[246318] Added a comment referring to bug in platform.
This commit is contained in:
parent
800d7229c9
commit
86adda189d
1 changed files with 95 additions and 108 deletions
|
@ -186,26 +186,14 @@ public class VariableVMNode extends AbstractExpressionVMNode
|
||||||
|
|
||||||
final IExpressionDMContext dmc = findDmcInPath(update.getViewerInput(), update.getElementPath(), IExpressions.IExpressionDMContext.class);
|
final IExpressionDMContext dmc = findDmcInPath(update.getViewerInput(), update.getElementPath(), IExpressions.IExpressionDMContext.class);
|
||||||
|
|
||||||
if ( dmc == null ) {
|
|
||||||
/*
|
|
||||||
* For whatever reason we could not find a match. There is one known case where this happens
|
|
||||||
* and that is when the Find function is trying construct a list of the items to be searched
|
|
||||||
* and it wants to get the value of the "Add new expression" entry which is a pseudo phantom
|
|
||||||
* entry that is created by the ExpressionManagerVMNode for nice work flow display purposes.
|
|
||||||
* But it not real and has no corresponding DMC. In this case we will just make it blank and
|
|
||||||
* this will show OK for the most part. There are other error VMC's which do not have valid
|
|
||||||
* DMC's which can come from the ExpressionManagerVMNode. This will handle both cases.
|
|
||||||
*/
|
|
||||||
String[] localColumns = update.getColumnIds();
|
|
||||||
if (localColumns == null)
|
|
||||||
localColumns = new String[] { IDebugVMConstants.COLUMN_ID__NAME };
|
|
||||||
|
|
||||||
for (int idx = 0; idx < localColumns.length; idx++) {
|
if ( dmc == null ) {
|
||||||
update.setLabel("",idx);
|
// Workaround for a bug in platform, where the find operation may use wrong label provider.
|
||||||
}
|
// See bug 246618.
|
||||||
update.done();
|
update.done();
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
else {
|
|
||||||
getDMVMProvider().getModelData(
|
getDMVMProvider().getModelData(
|
||||||
this, update,
|
this, update,
|
||||||
getServicesTracker().getService(IExpressions.class, null),
|
getServicesTracker().getService(IExpressions.class, null),
|
||||||
|
@ -304,7 +292,6 @@ public class VariableVMNode extends AbstractExpressionVMNode
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Private data access routine which performs the extra level of data access needed to
|
* Private data access routine which performs the extra level of data access needed to
|
||||||
|
|
Loading…
Add table
Reference in a new issue