fixed a silly mistake that broke soundcloud

also added an error handler for this issue if it happens ever again
This commit is contained in:
wukko 2022-09-04 10:14:25 +06:00
parent bf8571565c
commit ecf2dac5d8
3 changed files with 9 additions and 4 deletions

View file

@ -73,7 +73,11 @@ if (fs.existsSync('./.env')) {
res.status(j.status).json(j.body);
} else {
let j = apiJSON(3, { t: loc(languageCode(req), 'ErrorNoLink', process.env.selfURL) })
res.status(j.status).json(j.body);
if (!j === undefined && j.status && j.body) {
res.status(j.status).json(j.body);
} else {
res.status(500).json({ 'status': 'error', 'text': loc(languageCode(req), 'ErrorUnknownStatus') })
}
}
break;
case 'stream':

View file

@ -76,6 +76,7 @@ export default async function (host, patternMatch, url, lang, obj) {
noWatermark: obj.noWatermark, fullAudio: obj.fullAudio,
isAudioOnly: obj.isAudioOnly
});
if (r.isAudioOnly) obj.isAudioOnly = true
break;
case "tumblr":
r = await tumblr({

View file

@ -1,9 +1,9 @@
import { audioIgnore, services, supportedAudio } from "../config.js"
import { apiJSON } from "./utils.js"
export default function(r, host, ip, audioFormat) {
export default function(r, host, ip, audioFormat, isAudioOnly) {
if (!r.error) {
if (!r.isAudioOnly) {
if (!isAudioOnly) {
switch (host) {
case "twitter":
return apiJSON(1, { u: r.urls })
@ -51,7 +51,7 @@ export default function(r, host, ip, audioFormat) {
let copy = false;
if (!supportedAudio.includes(audioFormat)) audioFormat = "best";
if ((host == "tiktok" || host == "douyin") && r.isAudioOnly && services.tiktok.audioFormats.includes(audioFormat)) {
if ((host == "tiktok" || host == "douyin") && isAudioOnly && services.tiktok.audioFormats.includes(audioFormat)) {
if (r.isMp3) {
if (audioFormat == "mp3" || audioFormat == "best") {
audioFormat = "mp3"