ActionSubstitutor.java


current inspection = 2009-09-03 21:56:13 (id #1)


Filter Options
Annotation Kind:
pre
presumption
post
unanalyzed
test_vector


  • void com.dmdirc.actions.ActionSubstitutor(ActionType)

  • Kind Annotation Text
    postinit'ed(this.type)
    postthis.type == type

  • com.dmdirc.actions.ActionSubstitutor__static_init

  • Kind Annotation Text

  • void doComponentSubstitutions(StringBuilder, Object[])

  • Kind Annotation Text
    pre(soft) args != null
    pre(soft) init'ed(args[...])
    pre(soft) target != null
    pre(soft) this.type.type != null
    prethis.type != null
    presumptionarr$.length@110 <= 232-1
    presumptionarr$.length@110 <= args.length
    presumptiongetArgTypes(...)@110 != null
    presumptionjava.util.Iterator:next(...)@112 != null
    unanalyzedcall on appliesTo
    unanalyzedcall on com.dmdirc.logger.Logger:assertTrue
    unanalyzedcall on java.lang.Object:equals
    unanalyzedcall on java.lang.String:length
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:iterator
    test_vectorargs[...]: Addr_Set{null}, Inverse{null}
    test_vectorget(...)@114: Addr_Set{null}, Inverse{null}
    test_vectorjava.util.Iterator:hasNext(...)@112: {0}, {1}

  • void doConfigSubstitutions(StringBuilder)

  • Kind Annotation Text
    pre(soft) target != null
    presumptioncom.dmdirc.config.ConfigManager:getOptions(...)@72 != null
    presumptioncom.dmdirc.config.IdentityManager:getGlobalConfig(. ..)@72 != null
    presumptionjava.util.Iterator:next(...)@72 != null
    presumptionjava.util.Map:entrySet(...)@72 != null
    unanalyzedcall on java.lang.String:length
    test_vectorjava.util.Iterator:hasNext(...)@72: {0}, {1}

  • void doReplacement(StringBuilder, String, String)

  • Kind Annotation Text
    pre(soft) needle != null
    prehaystack != null
    presumptionjava.lang.StringBuilder:indexOf(...)@273 + java.lang.String:length(...)@276 in {-231..232-1}
    test_vectorjava.lang.StringBuilder:indexOf(...)@273: {-1}, {-231..-2, 0..232-1}

  • void doServerSubstitutions(StringBuilder, Object[])

  • Kind Annotation Text
    pre(soft) init'ed(args[0])
    pre(soft) target != null
    preargs != null
    presumptiongetCompatibleComponents(...)@164 init'ed
    presumptionjava.util.Iterator:next(...)@164 != null
    presumptionserver.myState.state@156 != null
    presumptionserver.myState@156 != null
    unanalyzedcall on appliesTo
    unanalyzedcall on com.dmdirc.logger.Logger:assertTrue
    unanalyzedcall on java.lang.Object:equals
    unanalyzedcall on java.lang.String:length
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:iterator
    test_vectorargs.length: {0}, {1..+Inf}
    test_vectorargs[0]: Addr_Set{null}, Inverse{null}
    test_vectorcom.dmdirc.ServerState:equals(...)@160: {1}, {0}
    test_vectorget(...)@166: Addr_Set{null}, Inverse{null}
    test_vectorgetServer(...)@156: Addr_Set{null}, Inverse{null}

  • String doSubstitution(String, Object[])

  • Kind Annotation Text
    pre(soft) args[1].length in {1..232-1}
    pre(soft) args[2].length in {1..232-1}
    pre(soft) init'ed(args[0])
    pre(soft) init'ed(args[1])
    pre(soft) init'ed(args[2])
    pre(soft) init'ed(args[...])
    pre(soft) this.type.type != null
    preargs != null
    prethis.type != null
    postinit'ed(java.lang.StringBuilder:toString(...)._ tainted)
    postjava.lang.StringBuilder:toString(...)._tainted == target._tainted
    postreturn_value == &amp;java.lang.StringBuilder:toStri ng(...)
    unanalyzedcall on [Ljava.lang.String;:instanceof
    unanalyzedcall on appliesTo
    unanalyzedcall on com.dmdirc.ServerState:equals
    unanalyzedcall on com.dmdirc.config.ConfigManager:getOptions
    unanalyzedcall on com.dmdirc.config.IdentityManager:getGlobal Config
    unanalyzedcall on com.dmdirc.logger.Logger:assertTrue
    unanalyzedcall on get
    unanalyzedcall on getArgTypes
    unanalyzedcall on getCompatibleComponents
    unanalyzedcall on getServer
    unanalyzedcall on getState
    unanalyzedcall on getType
    unanalyzedcall on java.lang.Object:equals
    unanalyzedcall on java.lang.Object:toString
    unanalyzedcall on java.lang.String:instanceof
    unanalyzedcall on java.lang.String:length
    unanalyzedcall on java.lang.String:split
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:iterator
    unanalyzedcall on java.util.Map$Entry:getKey
    unanalyzedcall on java.util.Map$Entry:getValue
    unanalyzedcall on java.util.Map:entrySet
    unanalyzedcall on java.util.Set:iterator

  • void doWordSubstitutions(StringBuilder, Object[])

  • Kind Annotation Text
    pre(soft) args[1].length in {1..232-1}
    pre(soft) args[2].length in {1..232-1}
    pre(soft) init'ed(args[1])
    pre(soft) init'ed(args[2])
    pre(soft) target != null
    preargs != null
    unanalyzedcall on java.lang.String:length
    test_vectorargs.length: {0,1}, {2}, {3..+Inf}
    test_vectorjava.lang.StringBuffer:length(...)@231: {-231..0}, {1..232-1}

  • Map getComponentSubstitutions()

  • Kind Annotation Text
    pre(soft) this.type.type != null
    prethis.type != null
    presumptionarr$.length@88 <= 232-1
    presumptionarr$.length@88 <= getArgNames(...).length@91
    presumptiongetArgNames(...).length@91 >= 1
    presumptiongetArgNames(...)@91 != null
    presumptiongetArgTypes(...)@88 != null
    presumptionjava.util.Iterator:next(...)@89 != null
    postnew HashMap(getComponentSubstitutions#1) num objects == 1
    postreturn_value == &amp;new HashMap(getComponentSubsti tutions#1)
    unanalyzedcall on appliesTo
    unanalyzedcall on com.dmdirc.logger.Logger:assertTrue
    unanalyzedcall on java.lang.Object:equals
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:iterator
    test_vectorjava.util.Iterator:hasNext(...)@89: {0}, {1}

  • Set getConfigSubstitutions()

  • Kind Annotation Text
    presumptioncom.dmdirc.config.ConfigManager:getOptions(...)@62 != null
    presumptioncom.dmdirc.config.IdentityManager:getGlobalConfig(. ..)@62 != null
    postinit'ed(return_value)

  • Map getServerSubstitutions()

  • Kind Annotation Text
    pre(soft) this.type.type != null
    prethis.type != null
    presumptiongetCompatibleComponents(...)@137 init'ed
    presumptionjava.util.Iterator:next(...)@137 != null
    postnew HashMap(getServerSubstitutions#1) num objects == 1
    postreturn_value == &amp;new HashMap(getServerSubstitut ions#1)
    unanalyzedcall on appliesTo
    unanalyzedcall on com.dmdirc.logger.Logger:assertTrue
    unanalyzedcall on getArgTypes
    unanalyzedcall on getType
    unanalyzedcall on java.lang.Class:getSuperclass
    unanalyzedcall on java.lang.Object:equals
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:iterator
    test_vectorjava.util.Iterator:hasNext(...)@137: {0}, {1}

  • bool hasFrameContainer()

  • Kind Annotation Text
    pre(soft) this.type.type != null
    prethis.type != null
    presumptiongetArgTypes(...).length@187 >= 1
    presumptiongetArgTypes(...)@186 != null
    presumptiongetArgTypes(...)@187 != null
    postinit'ed(return_value)
    test_vectorgetArgTypes(...).length@186: {0}, {1..+Inf}

  • bool usesWordSubstitutions()

  • Kind Annotation Text
    pre(soft) this.type.type != null
    prethis.type != null
    presumptiongetArgTypes(...).length@204 >= 3
    presumptiongetArgTypes(...)@204 != null
    postinit'ed(return_value)