Carbonite All in One (Retail & Classic)

great addon now it supports all WoW Retail and Classic versions

File Details

CarboniteAllinOneRetailClassic-v12.0.0-00038

  • R
  • May 28, 2026
  • 20.28 MB
  • 196
  • 12.0.1+7
  • Retail + 3

File Name

CarboniteAllinOneRetailClassic-v12.0.0-00038.zip

Supported Versions

  • 12.0.1
  • 12.0.0
  • 11.0.5
  • 5.5.3
  • 4.4.2
  • 3.4.3
  • 2.5.5
  • 1.15.8

Carbonite All in One (Retail & Classic)

v12.0.0-00038 (2026-05-28)

Full Changelog Previous Releases

  • Quest: defer secure WQ-click APIs; resolve live questID for "?"
    Two retail fixes around quest interactions.
    WQ pin click (MapIcons.lua): the world-quest pin OnClick called
    C_SuperTrack.SetSuperTrackedQuestID and QuestUtil.TrackWorldQuest
    synchronously from Carbonite's tainted click handler. The trigger
    chain that follows (Blizzard's super-tracking CallbackRegistry ->
    QuestDataProvider:RefreshAllData -> AcquirePin ->
    CheckMouseButtonPassthrough -> SetPassThroughButtons) inherits our
    taint, and SetPassThroughButtons is protected -- so quest completion
    typically surfaced as ADDON_ACTION_BLOCKED blaming Carbonite. Capture
    the click-time inputs (questID, shift, watchType, isSuperTracked) and
    re-run the super-track / watch branches from a C_Timer.After(0)
    closure so the secure calls originate from the timer system instead
    of our click stack.
    Self-completable "?" click (WatchWindow.lua): clicking the
    QuestWatchAC button never fired the autocomplete popup on retail
    (while the AutoTurnInAC option worked). Two real causes layered on
    top of each other:
    * Carbonite's cur.QId is title-matched out of the bundled quest DB
    and can pin to a legacy/story ID (debug example: a current
    retail self-completable quest got cur.QId = 28827 = the cata
    "In die Tiefe" / retail-DB "The Eye of the Storm"; live questID
    was 94363). C_QuestLog.IsOnQuest(28827) is false,
    AddAutoQuestPopUp returns false, ShowQuestComplete silently
    no-ops. Resolve the live questID via
    C_QuestLog.GetQuestIDForLogIndex(cur.QI) before any Blizzard
    call -- cur.QI is the Blizzard log index Carbonite already
    tracks, so this round-trips reliably.
    * The popup queue is emptied once the player dismisses Blizzard's
    own popup, so a later "?" click that just calls
    ShowQuestComplete hits an empty queue and no-ops. Force
    AddAutoQuestPopUp(liveID, "COMPLETE") first to re-queue, then
    ShowQuestComplete -- mirroring the QUEST_AUTOCOMPLETE handler
    in blizzard_questobjectivetracker. Defer both via
    C_Timer.After(0) so taint from our click stack doesn't follow
    the call.
    Co-Authored-By: Claude Opus 4.7 noreply@anthropic.com