if (dwFlags & MCI_OPEN_ELEMENT) {
if (dwFlags & MCI_OPEN_ELEMENT_ID) {
WARN("MCI_OPEN_ELEMENT_ID %p! Abort\n", lpOpenParms->lpstrElementName);
- return MCIERR_NO_ELEMENT_ALLOWED;
+ ret = MCIERR_NO_ELEMENT_ALLOWED;
+ goto the_error;
}
TRACE("MCI_OPEN_ELEMENT element name: %s\n", debugstr_w(lpOpenParms->lpstrElementName));
if (!isalpha(lpOpenParms->lpstrElementName[0]) || lpOpenParms->lpstrElementName[1] != ':' ||
if (wmcda == NULL) return MCIERR_INVALID_DEVICE_ID;
+ MCICDA_Stop(wDevID, MCI_WAIT, NULL);
+
if (--wmcda->nUseCount == 0) {
CloseHandle(wmcda->handle);
}