Lionel Messi had a penalty saved as Barcelona were beaten by fierce rivals Espanyol.
Barca were stunned in the quarter-final first leg on Wednesday, ending an unbeaten run of 29 games in all competitions.
Messi had his spot-kick turned away by former Real Madrid goalkeeper Diego Lopez in the second half.
Espanyol's academy graduate Oscar Melendo crashed in the only goal of the game in the 88th minute.
The goal sparked jubilant scenes in the home end as Espanyol secured a dramatic victory.
Barca had not lost to Espanyol since 2009 and this was their first defeat by their local rivals in the Cup since 1970.
The last game they had lost in any competition was in the Spanish Super Cup to Real Madrid on Aug. 16.
The second leg of the tie at the Nou Camp is on Jan. 25.