Last Msg First Msg
























method com.dmdirc.actions.wrappers.Alias__static_init










method void com.dmdirc.actions.wrappers.Alias(String)
postthis.arguments == &new ArrayList(Alias#1)
postthis.command == command
postinit'ed(this.command)
postthis.response == &new String[](Alias#3)
postnew ArrayList(Alias#1) num objects == 1
postnew String[](Alias#3) num objects == 1
postthis.response.length == 1
postthis.response[0] == &""










method void com.dmdirc.actions.wrappers.Alias(String, List, String[])
preresponse != null
pre(soft) init'ed(response[...])
postthis.arguments == &new ArrayList(Alias#1)
postthis.command == command
postinit'ed(this.command)
postthis.response == &new String[](Alias#2)
postnew ArrayList(Alias#1) num objects == 1
postnew String[](Alias#2) num objects == 1
postthis.response.length == response.length
postinit'ed(this.response.length)
postthis.response[...] == One-of{response[...], undefined}










method String getCommand()
preinit'ed(this.command)
postreturn_value == this.command
postinit'ed(return_value)










method void setCommand(String)
prethis.command != null
pre(soft) this.arguments != null
presumptionjava.util.List:get(...)@105 != null
presumptionjava.util.List:get(...)@108 != null
postthis.command == One-of{old this.command, command}
postinit'ed(this.command)
test_vectorargument.comparison@105: Addr_Set{&com.dmdirc. actions.CoreActionComparison__static_init.new CoreActionComparison$2(CoreActionComparison__ static_init#2)}, Inverse{&com.dmdirc.actions. CoreActionComparison__static_init.new CoreActionCompariso...
test_vectorjava.lang.String:equals(...)@100: {1}, {0}










method String getName()
prethis.arguments != null
preinit'ed(this.command)
presumptioncondition.comparison != null
postinit'ed(java.lang.StringBuilder:toString(...)._ tainted)
postreturn_value in Addr_Set{&java.lang. StringBuilder:toString(...),&java.lang. StringBuilder:toString(...)}
unanalyzedcall on java.util.List:get
unanalyzedcall on java.util.List:size
test_vectorjava.lang.Object:equals(...)@126: {0}, {1}
test_vectorjava.lang.Object:equals(...)@128: {0}, {1}
test_vectorjava.lang.Object:equals(...)@130: {0}, {1}










method List getArguments()
preinit'ed(this.arguments)
postreturn_value == &new ArrayList(getArguments#1)
postnew ArrayList(getArguments#1) num objects == 1










method ActionCondition getArgsArgument()
prethis.arguments != null
presumptionjava.util.List:get(...)@156 != null
postinit'ed(return_value)
test_vectorargument.comparison@156: Inverse{&com.dmdirc. actions.CoreActionComparison__static_init.new CoreActionComparison$2(CoreActionComparison__ static_init#2)}, Addr_Set{&com.dmdirc.actions. CoreActionComparison__static_init.new CoreActionCompariso...
test_vectorjava.util.List:size(...)@159: {-231..1}, {2..232-1}










method void setArguments(List)
prethis.arguments != null
postthis.arguments == One-of{old this.arguments, &new ArrayList(setArguments#1)}
postthis.arguments != null
postnew ArrayList(setArguments#1) num objects <= 1
test_vectorjava.lang.Object:equals(...)@175: {1}, {0}










method String[] getResponse()
prethis.response != null
pre(soft) init'ed(this.response[...])
postreturn_value == &amp;new String[](getResponse#1)
postnew String[](getResponse#1) num objects == 1
postreturn_value.length == this.response.length
postinit'ed(return_value.length)
postreturn_value[...] == One-of{this.response[...], undefined}










method void setResponse(String[])
preinit'ed(this.response)
pre(soft) response != null
pre(soft) init'ed(response[...])
postthis.response == One-of{old this.response, &amp;new String[](setResponse#1)}
postinit'ed(this.response)
postnew String[](setResponse#1) num objects <= 1
postnew String[](setResponse#1).length == response.length
postinit'ed(new String[](setResponse#1).length)
postpossibly_updated(new String[](setResponse#1)[...])
test_vectorjava.util.Arrays:equals(...)@195: {1}, {0}










method void update(Alias)
prealias != null
preinit'ed(alias.arguments)
preinit'ed(alias.command)
prealias.response != null
prethis.arguments != null
prethis.command != null
preinit'ed(this.response)
pre(soft) init'ed(alias.response[...])
postthis.arguments == One-of{old this.arguments, &amp;new ArrayList(setArguments#1)}
postthis.arguments != null
postthis.command == One-of{old this.command, alias.command}
postinit'ed(this.command)
postthis.response == One-of{old this.response, &amp;new String[](setResponse#1)}
postinit'ed(this.response)
postnew ArrayList(setArguments#1) num objects <= 1
postnew String[](setResponse#1) num objects <= 1
postnew String[](setResponse#1).length == alias.response.length
postinit'ed(new String[](setResponse#1).length)
postpossibly_updated(new String[](setResponse#1)[...])
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.Arrays:equals
unanalyzedcall on java.lang.Object:equals
unanalyzedcall on java.util.List:get
unanalyzedcall on java.lang.String:equals










method bool matches(Alias)
prealias != null
prealias.command != null
preinit'ed(this.command)
pre(soft) init'ed(alias.arguments)
pre(soft) init'ed(this.arguments)
postinit'ed(return_value)
unanalyzedcall on java.util.ArrayList










method Action createAction()
preinit'ed(com/dmdirc/actions/wrappers/AliasWrapper. me)
prethis.arguments != null
preinit'ed(this.command)
prethis.response != null
pre(soft) init'ed(this.response[...])
postcom/dmdirc/actions/wrappers/AliasWrapper.me == One-of{old com/dmdirc/actions/wrappers/AliasWrappe r.me, &amp;new AliasWrapper(getAliasWrapper#1)}
postcom/dmdirc/actions/wrappers/AliasWrapper.me != null
postreturn_value == &amp;new Action(createAction#1)
postnew Action(createAction#1) num objects == 1
postnew AliasWrapper(getAliasWrapper#1) num objects <= 1
postnew ArrayList(ActionGroup#1) num objects == new AliasWrapper(getAliasWrapper#1) num objects
postnew ArrayList(AliasWrapper#1) num objects == new AliasWrapper(getAliasWrapper#1) num objects
postnew HashMap(ActionGroup#2) num objects == new AliasWrapper(getAliasWrapper#1) num objects
postnew AliasWrapper(getAliasWrapper#1).actions == &amp;new ArrayList(ActionGroup#1)
postnew AliasWrapper(getAliasWrapper#1).aliases == &amp;new ArrayList(AliasWrapper#1)
postnew AliasWrapper(getAliasWrapper#1).author == null
postnew AliasWrapper(getAliasWrapper#1).description == null
postnew AliasWrapper(getAliasWrapper#1).component == -1
postnew AliasWrapper(getAliasWrapper#1).version == -1
postnew AliasWrapper(getAliasWrapper#1).name == &amp;"aliases"
postnew AliasWrapper(getAliasWrapper#1).settings == &amp;new HashMap(ActionGroup#2)
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.lang.Object:equals
unanalyzedcall on com.dmdirc.actions.ActionGroup
unanalyzedcall on java.util.HashMap
unanalyzedcall on java.util.List:get
unanalyzedcall on java.util.List:size
unanalyzedcall on java.lang.Object:toString









Prev Msg Next Msg
  unused assignment in callee
Low Prob.
Unused assignment to (java.lang.StringBuilder:toStr ing(...)._tainted, java.lang.StringBuilder:toString (...)._tainted) in getName
  call too complex - analysis skippedInfocall on void com.dmdirc.actions.Action(String, String, ActionType[], String[], List, String)
Prev Msg Next Msg











method String toString()
prethis.arguments != null
preinit'ed(this.command)
preinit'ed(this.response)
postinit'ed(java.lang.StringBuilder:toString(...)._ tainted)
postreturn_value == &amp;java.lang.StringBuilder:toStri ng(...)
unanalyzedcall on java.lang.Object:equals
unanalyzedcall on java.util.List:get
unanalyzedcall on java.util.List:size
unanalyzedcall on java.lang.Object:toString