Last Msg First Msg
























method com.dmdirc.actions.wrappers.AliasWrapper__static_ init










method void com.dmdirc.actions.wrappers.AliasWrapper()
postthis.actions == &new ArrayList(ActionGroup#1)
postthis.aliases == &new ArrayList(AliasWrapper#1)
postthis.author == null
postthis.description == null
postthis.component == -1
postthis.version == -1
postthis.name == &"aliases"
postthis.settings == &new HashMap(ActionGroup#2)
postnew ArrayList(ActionGroup#1) num objects == 1
postnew ArrayList(AliasWrapper#1) num objects == 1
postnew HashMap(ActionGroup#2) num objects == 1
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.HashMap










method AliasWrapper getAliasWrapper()
preinit'ed(me)
postme == One-of{old me, &new AliasWrapper(getAlias Wrapper#1)}
postme != null
postreturn_value == me
postnew AliasWrapper(getAliasWrapper#1) num objects <= 1
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).component == -1
postnew AliasWrapper(getAliasWrapper#1).description == null
postnew AliasWrapper(getAliasWrapper#1).name == &amp;"aliases"
postnew AliasWrapper(getAliasWrapper#1).settings == &amp;new HashMap(ActionGroup#2)
postnew AliasWrapper(getAliasWrapper#1).version == -1
postnew ArrayList(ActionGroup#1) num objects <= 1
postnew ArrayList(AliasWrapper#1) num objects <= 1
postnew HashMap(ActionGroup#2) num objects <= 1
unanalyzedcall on com.dmdirc.actions.ActionGroup
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.HashMap
test_vectorme: Inverse{null}, Addr_Set{null}










method List getAliases()
postreturn_value == &amp;new ArrayList(getAliases#1)
postnew ArrayList(getAliases#1) num objects == 1










method void add(Action)
preaction != null
preaction.triggers != null
preaction.triggers.length >= 1
pre(soft) action.conditions != null
pre(soft) init'ed(action.name)
pre(soft) action.triggers[0] != null
pre(soft) action.triggers[...] != null
pre(soft) init'ed(com/dmdirc/GlobalWindow. globalWindow)
pre(soft) com/dmdirc/GlobalWindow.globalWindow. tabCompleter != null
pre(soft) init'ed(com/dmdirc/ServerManager.me)
pre(soft) this.actions != null
pre(soft) this.aliases != null
presumptioninit'ed(com.dmdirc.logger.ErrorLevel.MEDIUM)
presumptioninit'ed(com.dmdirc.ui.input.TabCompletionType. COMMAND)
presumptionjava.util.Iterator:next(...)@98 != null
presumptionserver.tabCompleter@98 != null
postcom/dmdirc/ServerManager.me == One-of{old com/dmdirc/ServerManager.me, &amp;new ServerManager(getServerManager#1)}
postinit'ed(com/dmdirc/ServerManager.me)
postnew ArrayList(ServerManager#1) num objects <= 1
postnew ServerManager(getServerManager#1) num objects <= 1
postinit'ed(new ServerManager(getServerManager#1). servers)
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getConditions
unanalyzedcall on com.dmdirc.commandparser.CommandManager:get CommandChar
unanalyzedcall on java.util.List:add
test_vectorcom/dmdirc/GlobalWindow.globalWindow: Addr_Set{null}, Inverse{null}
test_vectorjava.lang.Object:equals(...)@85: {0}, {1}









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getTriggers(...)[0] != null
  use of default init
Low Prob.
check if init'ed(getTriggers(...).length)
Prev Msg Next Msg










  method not available - call not analyzedInfocall on void com.dmdirc.ui.input.TabCompleter:addEn try(TabCompletionType, String)










  method not available - call not analyzedInfocall on void com.dmdirc.ui.input.TabCompleter:addEn try(TabCompletionType, String)










  method not available - call not analyzedInfocall on void com.dmdirc.logger.Logger:userError(Err orLevel, String)










  method not available - call not analyzedInfocall on void com.dmdirc.logger.Logger:userError(Err orLevel, String)











method void remove(Action)
preaction != null
preaction.triggers != null
preaction.triggers.length >= 1
pre(soft) action.conditions != null
pre(soft) action.triggers[0] != null
pre(soft) action.triggers[...] != null
pre(soft) init'ed(com/dmdirc/ServerManager.me)
pre(soft) this.actions != null
pre(soft) this.aliases != null
presumptioninit'ed(com.dmdirc.ui.input.TabCompletionType. COMMAND)
presumptionjava.util.Iterator:next(...)@121 != null
presumptionserver.tabCompleter@121 != null
postcom/dmdirc/ServerManager.me == One-of{old com/dmdirc/ServerManager.me, &amp;new ServerManager(getServerManager#1)}
postinit'ed(com/dmdirc/ServerManager.me)
postnew ArrayList(ServerManager#1) num objects <= 1
postnew ServerManager(getServerManager#1) num objects <= 1
postinit'ed(new ServerManager(getServerManager#1). servers)
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getConditions
unanalyzedcall on com.dmdirc.commandparser.CommandManager:get CommandChar
unanalyzedcall on java.util.List:remove
test_vectorjava.lang.Object:equals(...)@114: {0}, {1}
test_vectorjava.util.Iterator:hasNext(...)@121: {0}, {1}









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getTriggers(...)[0] != null
  use of default init
Low Prob.
check if init'ed(getTriggers(...).length)
Prev Msg Next Msg










  method not available - call not analyzedInfocall on void com.dmdirc.ui.input.TabCompleter:remov eEntry(TabCompletionType, String)











method String getCommandName(Action)
preaction != null
preaction.conditions != null
presumptionjava.util.Iterator:next(...)@135 != null
postjava.lang.StringBuilder:toString(...)._tainted == 0
postreturn_value in Addr_Set{null,&amp;java.lang. StringBuilder:toString(...)}
test_vectorcondition.arg@135: {-231..0, 2..232-1}, {1}
test_vectorjava.util.Iterator:hasNext(...)@135: {0}, {1}









  method not available - call not analyzedInfocall on char com.dmdirc.commandparser. CommandManager:getCommandChar()











method bool isDelible()
postreturn_value == 0










method String getDescription()
postreturn_value == &amp;"Aliases allow you to create new commands that invoke one or more other ... anage aliases using the "Alias Manager", located in the Settings menu."