Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEugene Tarassov2015-02-13 21:34:38 +0000
committerEugene Tarassov2015-02-13 21:34:38 +0000
commit42c688cba0b6d2aec84ba42b1b082f659ed28b22 (patch)
tree6fd409fe102bd4f29177ee1e61889d9b6d96c12c /agent/tcf/services
parent883c552e34958dff159a75d27b415317bfbc9df0 (diff)
downloadorg.eclipse.tcf.agent-42c688cba0b6d2aec84ba42b1b082f659ed28b22.tar.gz
org.eclipse.tcf.agent-42c688cba0b6d2aec84ba42b1b082f659ed28b22.tar.xz
org.eclipse.tcf.agent-42c688cba0b6d2aec84ba42b1b082f659ed28b22.zip
TCF Agent: fixed possible infinite loop in get_file_info_cache() in symbols proxy
Diffstat (limited to 'agent/tcf/services')
-rw-r--r--agent/tcf/services/symbols_proxy.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/agent/tcf/services/symbols_proxy.c b/agent/tcf/services/symbols_proxy.c
index d756fce6..28610906 100644
--- a/agent/tcf/services/symbols_proxy.c
+++ b/agent/tcf/services/symbols_proxy.c
@@ -1945,6 +1945,10 @@ static FileInfoCache * get_file_info_cache(Context * ctx, ContextAddress addr) {
if (c->pending != NULL) {
cache_wait(&c->cache);
}
+ else if (c->addr == addr) {
+ f = c;
+ break;
+ }
else if (c->range_addr <= addr && c->range_addr + c->range_size > addr) {
f = c;
break;

Back to the top