|
Lines 469-518
Link Here
|
| 469 |
} else { |
469 |
} else { |
| 470 |
final IStatus status= getStatus(); |
470 |
final IStatus status= getStatus(); |
| 471 |
if (status != null && !status.isOK()) { |
471 |
if (status != null && !status.isOK()) { |
| 472 |
if( file != null ) { |
472 |
fCallback.asyncExec(new Runnable() { |
| 473 |
fCallback.asyncExec(new Runnable() { |
473 |
public void run() { |
| 474 |
public void run() { |
474 |
fCallback.doScrollLocked(new Runnable() { |
| 475 |
fCallback.retrieveDisassembly(startAddress, finalEndAddress, linesHint, true, true); |
475 |
public void run() { |
| 476 |
}}); |
476 |
fCallback.insertError(startAddress, status.getMessage()); |
| 477 |
} |
477 |
} |
| 478 |
else { |
478 |
}); |
| 479 |
fCallback.asyncExec(new Runnable() { |
479 |
}}); |
| 480 |
public void run() { |
|
|
| 481 |
fCallback.doScrollLocked(new Runnable() { |
| 482 |
public void run() { |
| 483 |
fCallback.insertError(startAddress, status.getMessage()); |
| 484 |
} |
| 485 |
}); |
| 486 |
}}); |
| 487 |
} |
| 488 |
} |
480 |
} |
| 489 |
fCallback.setUpdatePending(false); |
481 |
fCallback.setUpdatePending(false); |
| 490 |
} |
482 |
} |
| 491 |
} |
483 |
} |
| 492 |
}; |
484 |
}; |
| 493 |
if (file != null) { |
485 |
executor.execute(new Runnable() { |
| 494 |
executor.execute(new Runnable() { |
486 |
public void run() { |
| 495 |
public void run() { |
487 |
final IDisassembly disassembly= fServicesTracker.getService(IDisassembly.class); |
| 496 |
final IDisassembly disassembly= fServicesTracker.getService(IDisassembly.class); |
488 |
if (disassembly == null) { |
| 497 |
if (disassembly == null) { |
489 |
disassemblyRequest.cancel(); |
| 498 |
disassemblyRequest.cancel(); |
490 |
disassemblyRequest.done(); |
| 499 |
disassemblyRequest.done(); |
491 |
return; |
| 500 |
return; |
492 |
} |
| 501 |
} |
493 |
disassembly.getMixedInstructions(context, startAddress, finalEndAddress, disassemblyRequest); |
| 502 |
disassembly.getMixedInstructions(context, file, lineNumber, lines*2, disassemblyRequest); |
494 |
}}); |
| 503 |
}}); |
|
|
| 504 |
} else { |
| 505 |
executor.execute(new Runnable() { |
| 506 |
public void run() { |
| 507 |
final IDisassembly disassembly= fServicesTracker.getService(IDisassembly.class); |
| 508 |
if (disassembly == null) { |
| 509 |
disassemblyRequest.cancel(); |
| 510 |
disassemblyRequest.done(); |
| 511 |
return; |
| 512 |
} |
| 513 |
disassembly.getMixedInstructions(context, startAddress, finalEndAddress, disassemblyRequest); |
| 514 |
}}); |
| 515 |
} |
| 516 |
} else { |
495 |
} else { |
| 517 |
final DataRequestMonitor<IInstruction[]> disassemblyRequest= new DataRequestMonitor<IInstruction[]>(executor, null) { |
496 |
final DataRequestMonitor<IInstruction[]> disassemblyRequest= new DataRequestMonitor<IInstruction[]>(executor, null) { |
| 518 |
@Override |
497 |
@Override |