mirror of
https://github.com/pbatard/rufus.git
synced 2024-08-14 23:57:05 +00:00
[syslinux] fix tails breakage and add support for fine grained versions
* With that obscene an amount of pre-releases of 6.03 (seriously, how many more YEARS pre-release of the same version do you actually need?), of course the syslinux people have managed to break the last remnants of compatibility they had between a single major version, so we are now forced to provide a smorgasbord of pre-release and out of band syslinux binaries on our server, and make sure we detect and handle incompatible syslinux versions clientside... For instance, even after fixing the EFI vs isolinux issue, we find that tails 1.1 is incompatible with 'pre19'. But it also uses its own '20131220' extended identifier, instead of 'pre1', its closest relative. So we have to multiply files and symbolic links to try to keep everybody happy. Talk about a MAJOR LETDOWN from the syslinux project... * Closes #363
This commit is contained in:
parent
60c66ef813
commit
0fceb38433
7 changed files with 167 additions and 75 deletions
|
@ -293,7 +293,7 @@ t MSG_111 "Incompatible Cluster size"
|
||||||
t MSG_112 "Formatting a large UDF volumes can take a lot of time. At USB 2.0 speeds, the estimated formatting "
|
t MSG_112 "Formatting a large UDF volumes can take a lot of time. At USB 2.0 speeds, the estimated formatting "
|
||||||
"duration is %d:%02d, during which the progress bar will appear frozen. Please be patient!"
|
"duration is %d:%02d, during which the progress bar will appear frozen. Please be patient!"
|
||||||
t MSG_113 "Large UDF volume"
|
t MSG_113 "Large UDF volume"
|
||||||
t MSG_114 "This image uses Syslinux %s but this application only includes the installation files for "
|
t MSG_114 "This image uses Syslinux %s%s but this application only includes the installation files for "
|
||||||
"Syslinux %s.\n\nAs new versions of Syslinux are not compatible with one another, and it wouldn't "
|
"Syslinux %s.\n\nAs new versions of Syslinux are not compatible with one another, and it wouldn't "
|
||||||
"be possible for Rufus to include them all, two additional files must be downloaded from the "
|
"be possible for Rufus to include them all, two additional files must be downloaded from the "
|
||||||
"Internet ('ldlinux.sys' and 'ldlinux.bss'):\n"
|
"Internet ('ldlinux.sys' and 'ldlinux.bss'):\n"
|
||||||
|
@ -685,7 +685,7 @@ t MSG_111 "حجم الكلستر غير ملائم"
|
||||||
t MSG_112 "فرمتة وحدات تخزين UDF كبيرة تستغرق وقتاً طويلاً. مع سرعة USB 2.0, المدة المقدّرة "
|
t MSG_112 "فرمتة وحدات تخزين UDF كبيرة تستغرق وقتاً طويلاً. مع سرعة USB 2.0, المدة المقدّرة "
|
||||||
"للفرمتة هي: %d:%02d, خلالها شريط التقدّم سيظهر مجمّد. يرجى التحلّي بالصبر!"
|
"للفرمتة هي: %d:%02d, خلالها شريط التقدّم سيظهر مجمّد. يرجى التحلّي بالصبر!"
|
||||||
t MSG_113 "وحدة تخزين UDF كبيرة"
|
t MSG_113 "وحدة تخزين UDF كبيرة"
|
||||||
t MSG_114 "هذه الصورة (الإيميج) تستخدم Syslinux %s ولكن هذا التطبيق يشمل فقط ملفات التثبيت لـ "
|
t MSG_114 "هذه الصورة (الإيميج) تستخدم Syslinux %s%s ولكن هذا التطبيق يشمل فقط ملفات التثبيت لـ "
|
||||||
"Syslinux %s. \n\nفالإصدارات الجديدة من Syslinux لا تتلاءم مع بعضها البعض, وأنه "
|
"Syslinux %s. \n\nفالإصدارات الجديدة من Syslinux لا تتلاءم مع بعضها البعض, وأنه "
|
||||||
"من غير الممكن لروفوس إحتواء الكل, يجب تحميل ملفين إضافيين من "
|
"من غير الممكن لروفوس إحتواء الكل, يجب تحميل ملفين إضافيين من "
|
||||||
"الإنترنت('ldlinux.sys' و 'ldlinux.bss'):\n"
|
"الإنترنت('ldlinux.sys' و 'ldlinux.bss'):\n"
|
||||||
|
@ -1117,7 +1117,7 @@ t MSG_111 "Несъвместим размер на клъстера"
|
||||||
t MSG_112 "Форматирането на голям UDF дял може да отнеме много време. При USB 2.0 скорости, приблизителното "
|
t MSG_112 "Форматирането на голям UDF дял може да отнеме много време. При USB 2.0 скорости, приблизителното "
|
||||||
"време е %d:%02d, при което процесната лента че изглежда не активна. Моля бъдете търпеливи!"
|
"време е %d:%02d, при което процесната лента че изглежда не активна. Моля бъдете търпеливи!"
|
||||||
t MSG_113 "Голям UDF дял"
|
t MSG_113 "Голям UDF дял"
|
||||||
t MSG_114 "Този образ използва Syslinux %s но тази програма включва само инсталационни файлове за"
|
t MSG_114 "Този образ използва Syslinux %s%s но тази програма включва само инсталационни файлове за"
|
||||||
"Syslinux %s.\n\nТъй като новите версии на Syslinux не са съвместими една с друга, и няма да е "
|
"Syslinux %s.\n\nТъй като новите версии на Syslinux не са съвместими една с друга, и няма да е "
|
||||||
"възможно за Rufus да ги включи всичките, два допълнителни файлове трябва да бъдат изтеглени от "
|
"възможно за Rufus да ги включи всичките, два допълнителни файлове трябва да бъдат изтеглени от "
|
||||||
"Интернет ('ldlinux.sys' и 'ldlinux.bss'):\n"
|
"Интернет ('ldlinux.sys' и 'ldlinux.bss'):\n"
|
||||||
|
@ -1489,7 +1489,7 @@ t MSG_111 "不支持的簇大小"
|
||||||
t MSG_112 "格式化较大的 UDF 卷可能需要很长时间。过程中进度条可能会呈禁止状态,属于正常现象。"
|
t MSG_112 "格式化较大的 UDF 卷可能需要很长时间。过程中进度条可能会呈禁止状态,属于正常现象。"
|
||||||
"请耐心等待!\nUSB 2.0 设备预计剩余时间:%d:%02d"
|
"请耐心等待!\nUSB 2.0 设备预计剩余时间:%d:%02d"
|
||||||
t MSG_113 "大容量 UDF 卷"
|
t MSG_113 "大容量 UDF 卷"
|
||||||
t MSG_114 "此镜像使用的更新版本的 Syslinux %s,此程序内置的 Syslinux %s 不支持更新版本。\n\n"
|
t MSG_114 "此镜像使用的更新版本的 Syslinux %s%s,此程序内置的 Syslinux %s 不支持更新版本。\n\n"
|
||||||
"Rufus 需要下载两个文件:'ldlinux.sys' 和 'ldlinux.bss'\n"
|
"Rufus 需要下载两个文件:'ldlinux.sys' 和 'ldlinux.bss'\n"
|
||||||
"- 选择 '是' 连接网络下载文件\n"
|
"- 选择 '是' 连接网络下载文件\n"
|
||||||
"- 选择 '否' 取消此项操作\n\n"
|
"- 选择 '否' 取消此项操作\n\n"
|
||||||
|
@ -1859,7 +1859,7 @@ t MSG_111 "不相容的配置單元大小"
|
||||||
t MSG_112 "磁碟區較大的 UDF 格式化作業時間較久,過程中進度列表可能會呈現靜止狀態、乃屬正常現象,請耐心等候。"
|
t MSG_112 "磁碟區較大的 UDF 格式化作業時間較久,過程中進度列表可能會呈現靜止狀態、乃屬正常現象,請耐心等候。"
|
||||||
"估計剩餘時間: %d:%02d"
|
"估計剩餘時間: %d:%02d"
|
||||||
t MSG_113 "大 UDF 磁碟區"
|
t MSG_113 "大 UDF 磁碟區"
|
||||||
t MSG_114 "此映像檔使用到 Syslinux %s ,但本軟體僅支援 Syslinux %s 安裝檔案。\n\n"
|
t MSG_114 "此映像檔使用到 Syslinux %s%s,但本軟體僅支援 Syslinux %s 安裝檔案。\n\n"
|
||||||
"由於不同版本的 Syslinux 互不相容,因此需額外下載以下擴充檔案: \n"
|
"由於不同版本的 Syslinux 互不相容,因此需額外下載以下擴充檔案: \n"
|
||||||
"'ldlinux.sys' 和 'ldlinux.bss'\n"
|
"'ldlinux.sys' 和 'ldlinux.bss'\n"
|
||||||
"如欲下載這份檔案,請選擇「是」,Rufus 將會自動上網下載。若要終止作業,請選擇「否」\n\n"
|
"如欲下載這份檔案,請選擇「是」,Rufus 將會自動上網下載。若要終止作業,請選擇「否」\n\n"
|
||||||
|
@ -2244,7 +2244,7 @@ t MSG_111 "Nekompatibilna veličina grupiranja"
|
||||||
t MSG_112 "Formatiranje velike UDF jedinice može potrajati. Pri USB 2.0 brzini, procijenjuje se "
|
t MSG_112 "Formatiranje velike UDF jedinice može potrajati. Pri USB 2.0 brzini, procijenjuje se "
|
||||||
" %d:%02d "
|
" %d:%02d "
|
||||||
t MSG_113 "Velika UDF jedinica"
|
t MSG_113 "Velika UDF jedinica"
|
||||||
t MSG_114 "Ova slika koristi Syslinux %s ali ova aplikacija samo uključuje datoteke za "
|
t MSG_114 "Ova slika koristi Syslinux %s%s ali ova aplikacija samo uključuje datoteke za "
|
||||||
"Syslinux %s.\n\nPošto nove ver. Syslinux nisu kompatibilne jedna s drugom, "
|
"Syslinux %s.\n\nPošto nove ver. Syslinux nisu kompatibilne jedna s drugom, "
|
||||||
"dvije dodatne datoteke se trebaju preuzeti sa"
|
"dvije dodatne datoteke se trebaju preuzeti sa"
|
||||||
"interneta: ('ldlinux.sys' i 'ldlinux.bss')\n"
|
"interneta: ('ldlinux.sys' i 'ldlinux.bss')\n"
|
||||||
|
@ -2641,7 +2641,7 @@ t MSG_111 "Inkompatibel klyngestørrelse"
|
||||||
t MSG_112 "Formatering af en stor UDF volume kan tage lang tid. Ved USB 2.0 hastigheder, er den anslåede varighed af "
|
t MSG_112 "Formatering af en stor UDF volume kan tage lang tid. Ved USB 2.0 hastigheder, er den anslåede varighed af "
|
||||||
"formatering %d:%02d, hvorunder statuslinjen forekommer frosset. Vær tålmodig!"
|
"formatering %d:%02d, hvorunder statuslinjen forekommer frosset. Vær tålmodig!"
|
||||||
t MSG_113 "Stor UDF volume"
|
t MSG_113 "Stor UDF volume"
|
||||||
t MSG_114 "Dette image benytter Syslinux %s men denne applikation indeholder kun installationsfilerne til "
|
t MSG_114 "Dette image benytter Syslinux %s%s men denne applikation indeholder kun installationsfilerne til "
|
||||||
"Syslinux %s.\n\nDa nye versioner af Syslinux ikke er kompatible med hinanden, og det desuden ikke "
|
"Syslinux %s.\n\nDa nye versioner af Syslinux ikke er kompatible med hinanden, og det desuden ikke "
|
||||||
"ville være muligt for Rufus at inkludere dem alle, er det nødvendigt at hente to yderligere filer fra "
|
"ville være muligt for Rufus at inkludere dem alle, er det nødvendigt at hente to yderligere filer fra "
|
||||||
"nettet ('ldlinux.sys' and 'ldlinux.bss'):\n"
|
"nettet ('ldlinux.sys' and 'ldlinux.bss'):\n"
|
||||||
|
@ -3028,7 +3028,7 @@ t MSG_110 "MS-DOS kan niet opstarten van een apparaat met een clustergrootte van
|
||||||
t MSG_111 "Incompatibel Clustergrootte"
|
t MSG_111 "Incompatibel Clustergrootte"
|
||||||
t MSG_112 "Het formatteren van grote UDF volumes kan een lange tijd duren..."
|
t MSG_112 "Het formatteren van grote UDF volumes kan een lange tijd duren..."
|
||||||
t MSG_113 "Grote UDF volume"
|
t MSG_113 "Grote UDF volume"
|
||||||
t MSG_114 "Deze image maakt gebruik van Syslinux %s maar de applicatie bevat alleen de installatiebestanden voor"
|
t MSG_114 "Deze image maakt gebruik van Syslinux %s%s maar de applicatie bevat alleen de installatiebestanden voor"
|
||||||
"Syslinux %s.\n\nOmdat oude en nieuwe versies van Syslinux niet compatibel zijn met elkaar, en het niet mogelijk is voor Rufus om alle versies te beheren,"
|
"Syslinux %s.\n\nOmdat oude en nieuwe versies van Syslinux niet compatibel zijn met elkaar, en het niet mogelijk is voor Rufus om alle versies te beheren,"
|
||||||
"moeten twee extra bestanden gedownload worden van het internet ('ldlinux.sys' en 'ldlinux.bss'):\n"
|
"moeten twee extra bestanden gedownload worden van het internet ('ldlinux.sys' en 'ldlinux.bss'):\n"
|
||||||
"- Klik op 'Ja' om via internet deze bestanden te downloaden\n"
|
"- Klik op 'Ja' om via internet deze bestanden te downloaden\n"
|
||||||
|
@ -3423,7 +3423,7 @@ t MSG_111 "Epäsopiva tilanvarausyksikkö"
|
||||||
t MSG_112 "Suurten UDF-asemien alustus voi kestää kauan. USB 2.0-nopeuksilla arvioitu alustuksen "
|
t MSG_112 "Suurten UDF-asemien alustus voi kestää kauan. USB 2.0-nopeuksilla arvioitu alustuksen "
|
||||||
"kesto on %d:%02d, minkä aikana etenemispalkki vaikuttaa pysähtyneeltä. Ole kärsivällinen!"
|
"kesto on %d:%02d, minkä aikana etenemispalkki vaikuttaa pysähtyneeltä. Ole kärsivällinen!"
|
||||||
t MSG_113 "Suuri UDF-asema"
|
t MSG_113 "Suuri UDF-asema"
|
||||||
t MSG_114 "Tämä kuva käyttää Syslinuxia %s ,mutta tämä sovellus sisältää asennustiedostot vain "
|
t MSG_114 "Tämä kuva käyttää Syslinuxia %s%s, mutta tämä sovellus sisältää asennustiedostot vain "
|
||||||
"Syslinuxille %s.\n\nKoska Syslinuxin uudet versiot eivät ole keskenään yhteensopivia, eikä Rufus "
|
"Syslinuxille %s.\n\nKoska Syslinuxin uudet versiot eivät ole keskenään yhteensopivia, eikä Rufus "
|
||||||
"voisi sisältää niitä kaikkia, on kaksi lisätiedostoa ladattava internetistä "
|
"voisi sisältää niitä kaikkia, on kaksi lisätiedostoa ladattava internetistä "
|
||||||
"('ldlinux.sys' ja 'ldlinux.bss'):\n"
|
"('ldlinux.sys' ja 'ldlinux.bss'):\n"
|
||||||
|
@ -3802,7 +3802,7 @@ t MSG_111 "Taille de clusters incompatible"
|
||||||
t MSG_112 "Le formatage d'un volume UDF de grande taille peut prendre beaucoup de temps. Aux vitesses USB 2.0, "
|
t MSG_112 "Le formatage d'un volume UDF de grande taille peut prendre beaucoup de temps. Aux vitesses USB 2.0, "
|
||||||
"la durée de formatage estimée est %d :%02d, pendant laquelle la barre de progrès semblera gelée. Veuillez être patient !"
|
"la durée de formatage estimée est %d :%02d, pendant laquelle la barre de progrès semblera gelée. Veuillez être patient !"
|
||||||
t MSG_113 "Volume UDF de grand taille"
|
t MSG_113 "Volume UDF de grand taille"
|
||||||
t MSG_114 "Cette image utilise Syslinux %s mais l'application inclus seulement les fichiers d'installation pour Syslinux %s.\n\n"
|
t MSG_114 "Cette image utilise Syslinux %s%s mais l'application inclus seulement les fichiers d'installation pour Syslinux %s.\n\n"
|
||||||
"Comme les nouvelles versions de Syslinux sont incompatibles entre elles, et il n'est pas possible à Rufus de toutes "
|
"Comme les nouvelles versions de Syslinux sont incompatibles entre elles, et il n'est pas possible à Rufus de toutes "
|
||||||
"les inclure, deux fichiers supplémentaires ('ldlinux.sys' et 'ldlinux.bss') doivent être téléchargés :\n"
|
"les inclure, deux fichiers supplémentaires ('ldlinux.sys' et 'ldlinux.bss') doivent être téléchargés :\n"
|
||||||
"- Choisissez 'Oui' pour télécharger ces fichier depuis Internet\n"
|
"- Choisissez 'Oui' pour télécharger ces fichier depuis Internet\n"
|
||||||
|
@ -4182,7 +4182,7 @@ t MSG_110 "MS-DOS kann nicht von einem Laufwerk starten, das 64 Kilobyte große
|
||||||
t MSG_111 "Inkompatible Zuordnungseinheitengröße"
|
t MSG_111 "Inkompatible Zuordnungseinheitengröße"
|
||||||
t MSG_112 "Großes UDF-Laufwerke zu formatieren, kann viel Zeit benötigen..."
|
t MSG_112 "Großes UDF-Laufwerke zu formatieren, kann viel Zeit benötigen..."
|
||||||
t MSG_113 "Großes UDF-Laufwerk"
|
t MSG_113 "Großes UDF-Laufwerk"
|
||||||
t MSG_114 "Dieses Abbild benutzt Syslinux %s, aber diese Anwendung verfügt nur über Installationsdateien für Syslinux %s.\n\n"
|
t MSG_114 "Dieses Abbild benutzt Syslinux %s%s, aber diese Anwendung verfügt nur über Installationsdateien für Syslinux %s.\n\n"
|
||||||
"Neuere Syslinux-Versionen sind untereinander nicht kompatibel. Rufus kann nicht alle Versionen unterstützen. "
|
"Neuere Syslinux-Versionen sind untereinander nicht kompatibel. Rufus kann nicht alle Versionen unterstützen. "
|
||||||
"Zwei zusätzliche Dateien müssen vom Internet heruntergeladen werden ('ldlinux.sys' and 'ldlinux.bss'):\n"
|
"Zwei zusätzliche Dateien müssen vom Internet heruntergeladen werden ('ldlinux.sys' and 'ldlinux.bss'):\n"
|
||||||
"- Wählen Sie 'Ja', um dem Download zuzustimmen oder\n"
|
"- Wählen Sie 'Ja', um dem Download zuzustimmen oder\n"
|
||||||
|
@ -4610,7 +4610,7 @@ t MSG_111 "Μη συμβατό μέγεθος συμπλέγματος"
|
||||||
t MSG_112 "Η διαμόρφωση μεγάλων τόμων UDF ίσως διαρκέσει αρκετά." Ο χρόνος διαμόρφωσης, στις ταχύτητες του USB 2.0 "
|
t MSG_112 "Η διαμόρφωση μεγάλων τόμων UDF ίσως διαρκέσει αρκετά." Ο χρόνος διαμόρφωσης, στις ταχύτητες του USB 2.0 "
|
||||||
"είναι %d:%02d. Κατά την διάρκεια της διαμόρφωσης η μπάρα προόδου θα είναι στατική. Παρακαλώ περιμένετε!"
|
"είναι %d:%02d. Κατά την διάρκεια της διαμόρφωσης η μπάρα προόδου θα είναι στατική. Παρακαλώ περιμένετε!"
|
||||||
t MSG_113 "Mεγάλος τόμος UDF"
|
t MSG_113 "Mεγάλος τόμος UDF"
|
||||||
t MSG_114 "Αυτό το είδωλο χρησιμοποιεί το Syslinux %s παρόλα αυτά η εφαρμογή(Rufus) εμπεριέχει μόνο τα αρχεία εγκατάστασης του "
|
t MSG_114 "Αυτό το είδωλο χρησιμοποιεί το Syslinux %s%s παρόλα αυτά η εφαρμογή(Rufus) εμπεριέχει μόνο τα αρχεία εγκατάστασης του "
|
||||||
"Syslinux %s.\n\n Εφόσον οι νέες εκδόσεις του Syslinux δεν είναι συμβατές μεταξύ τους, δεν είναι δυνατό για το Rufus"
|
"Syslinux %s.\n\n Εφόσον οι νέες εκδόσεις του Syslinux δεν είναι συμβατές μεταξύ τους, δεν είναι δυνατό για το Rufus"
|
||||||
"να τις εμπεριέχει όλες. Επομένως, απαιτείται η λήψη δύο νέων αρχείων απο το διαδίκτυο ('ldlinux.sys' και 'ldlinux.bss'): \n"
|
"να τις εμπεριέχει όλες. Επομένως, απαιτείται η λήψη δύο νέων αρχείων απο το διαδίκτυο ('ldlinux.sys' και 'ldlinux.bss'): \n"
|
||||||
"- Επιλέξτε το 'Ναι' για να συνδεθείτε στο διαδίκτυο και να κάνετε λήψη των αρχείων\n"
|
"- Επιλέξτε το 'Ναι' για να συνδεθείτε στο διαδίκτυο και να κάνετε λήψη των αρχείων\n"
|
||||||
|
@ -5754,7 +5754,7 @@ t MSG_111 "Dimensione cluster incompatibile"
|
||||||
t MSG_112 "La formattazione di un volume UDF di grandi dimensioni può richiedere molto tempo. in modo USB 2.0, il tempo stimato "
|
t MSG_112 "La formattazione di un volume UDF di grandi dimensioni può richiedere molto tempo. in modo USB 2.0, il tempo stimato "
|
||||||
"per la formattazione sarà di %d:%02d, durante il quale la barra di progresso non verrà aggiornata. Attendi il completamento dell'operazione!"
|
"per la formattazione sarà di %d:%02d, durante il quale la barra di progresso non verrà aggiornata. Attendi il completamento dell'operazione!"
|
||||||
t MSG_113 "Voume UDF di grandi dimensioni"
|
t MSG_113 "Voume UDF di grandi dimensioni"
|
||||||
t MSG_114 "Questa immagine usa Syslinux %s ma questa applicazione include solo i file di installazione per "
|
t MSG_114 "Questa immagine usa Syslinux %s%s ma questa applicazione include solo i file di installazione per "
|
||||||
"Syslinux %s.\n\nPoiché le nuove versioni di Syslinux non sono compatibili con le precedenti e "
|
"Syslinux %s.\n\nPoiché le nuove versioni di Syslinux non sono compatibili con le precedenti e "
|
||||||
"non sarebbe possibile per Rufus includerle tutte, devono essere scaricati da Internet due file aggiuntivi "
|
"non sarebbe possibile per Rufus includerle tutte, devono essere scaricati da Internet due file aggiuntivi "
|
||||||
"('ldlinux.sys' e 'ldlinux.bss'):\n"
|
"('ldlinux.sys' e 'ldlinux.bss'):\n"
|
||||||
|
@ -6159,7 +6159,7 @@ t MSG_111 "互換性がないクラスタサイズです。"
|
||||||
t MSG_112 "大きいUDFボリュームがフォーマットするは時間がかかれます。USB2.0スピードで、 "
|
t MSG_112 "大きいUDFボリュームがフォーマットするは時間がかかれます。USB2.0スピードで、 "
|
||||||
"フォーマットの推定持続は%d:%02d。この時間の間にプログレスバーは凍結用に見えます。こんな時間にちょっと待って下さい。"
|
"フォーマットの推定持続は%d:%02d。この時間の間にプログレスバーは凍結用に見えます。こんな時間にちょっと待って下さい。"
|
||||||
t MSG_113 "大きいUDFボリューム"
|
t MSG_113 "大きいUDFボリューム"
|
||||||
t MSG_114 "このイメージは Syslinux %s を使うが、このアプリケーションは Syslinux % のインストール "
|
t MSG_114 "このイメージは Syslinux %s%s を使うが、このアプリケーションは Syslinux % のインストール "
|
||||||
"ファイルだけあります。\n\nSyslinuxの新バージョンは互いに互換性のないから、RufusはSyslinkのすべて "
|
"ファイルだけあります。\n\nSyslinuxの新バージョンは互いに互換性のないから、RufusはSyslinkのすべて "
|
||||||
"を含めれません。インタネットから二つのファイルはダウンロードしなければならない。 "
|
"を含めれません。インタネットから二つのファイルはダウンロードしなければならない。 "
|
||||||
"('ldlinux.sys' and 'ldlinux.bss'):\n"
|
"('ldlinux.sys' and 'ldlinux.bss'):\n"
|
||||||
|
@ -6555,7 +6555,7 @@ t MSG_111 "호환되지 않는 클러스터 크기"
|
||||||
t MSG_112 "큰 UDF 볼륨을 포맷하려면 시간이 많이 걸릴 수 있습니다. USB 2.0의 속도로 추정했을 때, 예상 시간은 "
|
t MSG_112 "큰 UDF 볼륨을 포맷하려면 시간이 많이 걸릴 수 있습니다. USB 2.0의 속도로 추정했을 때, 예상 시간은 "
|
||||||
"%d:%02d 입니다. 포맷 중 진행바가 멈춤상태로 있을 수도 있습니다. 기다려주십시오!"
|
"%d:%02d 입니다. 포맷 중 진행바가 멈춤상태로 있을 수도 있습니다. 기다려주십시오!"
|
||||||
t MSG_113 "큰 UDF 볼륨"
|
t MSG_113 "큰 UDF 볼륨"
|
||||||
t MSG_114 "이 이미지는 Syslinux를 하지만 %s 이 프로그램에는 Syslinux의 설치 파일만 포함되어 있습니다. "
|
t MSG_114 "이 이미지는 Syslinux를 하지만 %s%s 이 프로그램에는 Syslinux의 설치 파일만 포함되어 있습니다. "
|
||||||
"Syslinux %s.\n\nSyslinux의 새 버전은 서로 호환되지 않으며, Rufus가 새 버전 모두를 포함하는 것은 불가능합니다."
|
"Syslinux %s.\n\nSyslinux의 새 버전은 서로 호환되지 않으며, Rufus가 새 버전 모두를 포함하는 것은 불가능합니다."
|
||||||
"다음 두 개의 추가 파일을 인터넷에서 다운로드 하십시오."
|
"다음 두 개의 추가 파일을 인터넷에서 다운로드 하십시오."
|
||||||
"('ldlinux.sys' and 'ldlinux.bss'):\n"
|
"('ldlinux.sys' and 'ldlinux.bss'):\n"
|
||||||
|
@ -6975,7 +6975,7 @@ t MSG_111 "Nekorekts klastera izmērs"
|
||||||
t MSG_112 "Large UDF disku formatēšana var aizņemt daudz laika. Izmantojot USB 2.0 aprēķinātais formatēšanas "
|
t MSG_112 "Large UDF disku formatēšana var aizņemt daudz laika. Izmantojot USB 2.0 aprēķinātais formatēšanas "
|
||||||
"ilgums ir %d:%02d, kura laikā izpildes līnija var apstāties. Esiet pacietīgi!"
|
"ilgums ir %d:%02d, kura laikā izpildes līnija var apstāties. Esiet pacietīgi!"
|
||||||
t MSG_113 "Large UDF disks"
|
t MSG_113 "Large UDF disks"
|
||||||
t MSG_114 "Šis imidžs izmanto Syslinux %s, bet aplikācija satur instalācijas failus "
|
t MSG_114 "Šis imidžs izmanto Syslinux %s%s, bet aplikācija satur instalācijas failus "
|
||||||
"Syslinux %s.\n\nTā kā jaunās Syslinux versijas nav savstarpēji atbalstāmas, nepieciešams "
|
"Syslinux %s.\n\nTā kā jaunās Syslinux versijas nav savstarpēji atbalstāmas, nepieciešams "
|
||||||
"no interneta ielādēt nepieciešamos failus ('ldlinux.sys' un 'ldlinux.bss'):\n"
|
"no interneta ielādēt nepieciešamos failus ('ldlinux.sys' un 'ldlinux.bss'):\n"
|
||||||
"- Izvēlieties 'Jā' lai pieslēgtos pie interneta un ielādētu šos failus\n"
|
"- Izvēlieties 'Jā' lai pieslēgtos pie interneta un ielādētu šos failus\n"
|
||||||
|
@ -7392,7 +7392,7 @@ t MSG_111 "Nesuderinamas Klasterio dydis"
|
||||||
t MSG_112 "Didelių UDF tomų formatavimas gali užimti daug laiko. USB 2.0 greičiu numatoma formatavimo "
|
t MSG_112 "Didelių UDF tomų formatavimas gali užimti daug laiko. USB 2.0 greičiu numatoma formatavimo "
|
||||||
"trukmė yra %d:%02d, tuo metu eigos juosta gali atrodyti sustingusi. Prašau kantrybės!"
|
"trukmė yra %d:%02d, tuo metu eigos juosta gali atrodyti sustingusi. Prašau kantrybės!"
|
||||||
t MSG_113 "Didelis UDF tomas"
|
t MSG_113 "Didelis UDF tomas"
|
||||||
t MSG_114 "Šis atvaizdas naudoja Syslinux %s, bet ši programa turi tik diegimo failus, skirtus "
|
t MSG_114 "Šis atvaizdas naudoja Syslinux %s%s, bet ši programa turi tik diegimo failus, skirtus "
|
||||||
"Syslinux %s.\n\nKadangi naujos Syslinux versijos tarpusavyje nesuderinamos, ir nėra galimybės "
|
"Syslinux %s.\n\nKadangi naujos Syslinux versijos tarpusavyje nesuderinamos, ir nėra galimybės "
|
||||||
"į Rufus įtraukti jas visas, du papildomi failai turi būti atsisiųsti iš "
|
"į Rufus įtraukti jas visas, du papildomi failai turi būti atsisiųsti iš "
|
||||||
"interneto ('ldlinux.sys' ir 'ldlinux.bss'):\n"
|
"interneto ('ldlinux.sys' ir 'ldlinux.bss'):\n"
|
||||||
|
@ -7816,7 +7816,7 @@ t MSG_111 "Incompatible Cluster size"
|
||||||
t MSG_112 "Pemformattan jilid UDF yang besar mengambil masa yang amat lama. Pada kelajuan USB 2.0 anggaran masa pemformatan "
|
t MSG_112 "Pemformattan jilid UDF yang besar mengambil masa yang amat lama. Pada kelajuan USB 2.0 anggaran masa pemformatan "
|
||||||
"adalah %d:%02d, di mana bar kemajuan akan lihat seperti ia tidak bergerak. Tolong bersabar"
|
"adalah %d:%02d, di mana bar kemajuan akan lihat seperti ia tidak bergerak. Tolong bersabar"
|
||||||
t MSG_113 "Jilid UDF besar"
|
t MSG_113 "Jilid UDF besar"
|
||||||
t MSG_114 "Imej ini menggunakan Syslinux %s tetapi aplikasi ini hanya mempunyai fail pemasangan untuk"
|
t MSG_114 "Imej ini menggunakan Syslinux %s%s tetapi aplikasi ini hanya mempunyai fail pemasangan untuk"
|
||||||
"Syslinux %s.\n\nOleh kerana versi-versi baharu Syslinux tidak serasi dengan satu sama lain, maka tidak"
|
"Syslinux %s.\n\nOleh kerana versi-versi baharu Syslinux tidak serasi dengan satu sama lain, maka tidak"
|
||||||
"wajarlah Rufus menyediakan semuanya, dua fail tambahan perlu dimuat turun dari"
|
"wajarlah Rufus menyediakan semuanya, dua fail tambahan perlu dimuat turun dari"
|
||||||
"Internet ('ldlinux.sys' dan 'ldlinux.bss'):\n"
|
"Internet ('ldlinux.sys' dan 'ldlinux.bss'):\n"
|
||||||
|
@ -8237,7 +8237,7 @@ t MSG_111 "Niekompatybilny Rozmiar jednostki alokacji"
|
||||||
t MSG_112 "Formatowanie dużych woluminów UDF może zająć dużo czasu. Przy prędkości USB 2.0 , szacunkowy czas "
|
t MSG_112 "Formatowanie dużych woluminów UDF może zająć dużo czasu. Przy prędkości USB 2.0 , szacunkowy czas "
|
||||||
"formatowania wynosi %d:%02d, podczas którego pasek postępu będzie wysawał się być zamrożony. Proszę być cierpliwym!"
|
"formatowania wynosi %d:%02d, podczas którego pasek postępu będzie wysawał się być zamrożony. Proszę być cierpliwym!"
|
||||||
t MSG_113 "Duży wolumin UDF"
|
t MSG_113 "Duży wolumin UDF"
|
||||||
t MSG_114 "Ten obraz używa Syslinux %s lecz ta aplikacja dołącza pliki instalacyjne tylko dla "
|
t MSG_114 "Ten obraz używa Syslinux %s%s lecz ta aplikacja dołącza pliki instalacyjne tylko dla "
|
||||||
"Syslinux %s.\n\nPonieważ nowa wersja Syslinux nie jest kompatybilna z inną i nie jest "
|
"Syslinux %s.\n\nPonieważ nowa wersja Syslinux nie jest kompatybilna z inną i nie jest "
|
||||||
"możliwe dla Rufusa aby załączyć je wszystkie, dwa dodatkowe pliki muszą być pobrane "
|
"możliwe dla Rufusa aby załączyć je wszystkie, dwa dodatkowe pliki muszą być pobrane "
|
||||||
"z Internetu ('ldlinux.sys' oraz 'ldlinux.bss'):\n"
|
"z Internetu ('ldlinux.sys' oraz 'ldlinux.bss'):\n"
|
||||||
|
@ -8472,7 +8472,7 @@ t MSG_104 "Syslinux v5.0 ou posterior requer que esteja instalado um arquivo '%s
|
||||||
"um \n arquivo '%s' atual, será substituído automaticamente.\n"
|
"um \n arquivo '%s' atual, será substituído automaticamente.\n"
|
||||||
t MSG_110 "MS-DOS não inicia um disco com um tamanho de cluster de 64 kilobytes.\n"
|
t MSG_110 "MS-DOS não inicia um disco com um tamanho de cluster de 64 kilobytes.\n"
|
||||||
"Por favor altere o tamanho de cluster ou use FreeDOS."
|
"Por favor altere o tamanho de cluster ou use FreeDOS."
|
||||||
t MSG_114 "Esta imagem usa Syslinux %s, mas este aplicativo inclui somente os arquivos de instalação para "
|
t MSG_114 "Esta imagem usa Syslinux %s%s, mas este aplicativo inclui somente os arquivos de instalação para "
|
||||||
"Syslinux %s.\n\nComo novas versões de Syslinux não são compatíveis entre si, e que não "
|
"Syslinux %s.\n\nComo novas versões de Syslinux não são compatíveis entre si, e que não "
|
||||||
"seja possível para Rufus incluí-los todos, dois arquivos adicionais devem ser baixados a partir da "
|
"seja possível para Rufus incluí-los todos, dois arquivos adicionais devem ser baixados a partir da "
|
||||||
"Internet ('ldlinux.sys' and 'ldlinux.bss'):\n"
|
"Internet ('ldlinux.sys' and 'ldlinux.bss'):\n"
|
||||||
|
@ -9208,7 +9208,7 @@ t MSG_111 "Dimensiune Cluster incompatibilă"
|
||||||
t MSG_112 "Formatarea volumului mare UDF, poate dura ceva timp. Viteza formatării USB 2.0, estimează "
|
t MSG_112 "Formatarea volumului mare UDF, poate dura ceva timp. Viteza formatării USB 2.0, estimează "
|
||||||
"durata este %d:%02d, în care va apărea pe bara de progres. Vă rugăm să aveţi răbdare!"
|
"durata este %d:%02d, în care va apărea pe bara de progres. Vă rugăm să aveţi răbdare!"
|
||||||
t MSG_113 "Volumul UDF mare"
|
t MSG_113 "Volumul UDF mare"
|
||||||
t MSG_114 "Această imagine foloseste Syslinux %s, dar această aplicație include doar fișierele de instalare pentru Syslinux %s . "
|
t MSG_114 "Această imagine foloseste Syslinux %s%s, dar această aplicație include doar fișierele de instalare pentru Syslinux %s. "
|
||||||
"Syslinux %s.\n\nNoile versiuni ale syslinux, nu sunt compatibile cu altele, și nu ar fi "
|
"Syslinux %s.\n\nNoile versiuni ale syslinux, nu sunt compatibile cu altele, și nu ar fi "
|
||||||
"este posibil ca Rufus să le includă, două fișiere suplimentare, ele trebuie să fi descărcate de pe "
|
"este posibil ca Rufus să le includă, două fișiere suplimentare, ele trebuie să fi descărcate de pe "
|
||||||
"Internet ('ldlinux.sys' şi 'ldlinux.bss'):\n"
|
"Internet ('ldlinux.sys' şi 'ldlinux.bss'):\n"
|
||||||
|
@ -9606,7 +9606,7 @@ t MSG_110 "MS-DOS не может загрузиться, при использ
|
||||||
t MSG_111 "Несовместимый размер кластера"
|
t MSG_111 "Несовместимый размер кластера"
|
||||||
t MSG_112 "Форматирование в Large UDF-тома занимает много времени..."
|
t MSG_112 "Форматирование в Large UDF-тома занимает много времени..."
|
||||||
t MSG_113 "Large UDF-том"
|
t MSG_113 "Large UDF-том"
|
||||||
t MSG_114 "Данный образ использует Syslinux %s, но данное приложение включает в себя только установочные файлы для "
|
t MSG_114 "Данный образ использует Syslinux %s%s, но данное приложение включает в себя только установочные файлы для "
|
||||||
"Syslinux %s.\n\nТак как новые версии Syslinux не совместимы друг с другом, необходимо, чтобы дополнительные"
|
"Syslinux %s.\n\nТак как новые версии Syslinux не совместимы друг с другом, необходимо, чтобы дополнительные"
|
||||||
"файлы ('ldlinux.sys' and 'ldlinux.bss') были загружены из интернета:\n"
|
"файлы ('ldlinux.sys' and 'ldlinux.bss') были загружены из интернета:\n"
|
||||||
"- Выберите 'Да', чтобы скачать файлы из интернета\n"
|
"- Выберите 'Да', чтобы скачать файлы из интернета\n"
|
||||||
|
@ -9997,7 +9997,7 @@ t MSG_111 "Nekompatibilná veľkosť klastra"
|
||||||
t MSG_112 "Formátovanie veľkých UDF zväzkov môže trvať dlhý čas. Rýchlosť USB 2.0 určuje "
|
t MSG_112 "Formátovanie veľkých UDF zväzkov môže trvať dlhý čas. Rýchlosť USB 2.0 určuje "
|
||||||
"trvanie formátovania (približne %d:%02d), počas procesu sa vám môže zdať, že aplikácia zamrzla. Budte trpezlivý! "
|
"trvanie formátovania (približne %d:%02d), počas procesu sa vám môže zdať, že aplikácia zamrzla. Budte trpezlivý! "
|
||||||
t MSG_113 "Veľkosť UDF zväzku"
|
t MSG_113 "Veľkosť UDF zväzku"
|
||||||
t MSG_114 "Tento obraz používa Syslinux %s ale tento program obsahuje inštaláciu pre "
|
t MSG_114 "Tento obraz používa Syslinux %s%s ale tento program obsahuje inštaláciu pre "
|
||||||
"Syslinux %s.\n\nAk nová verzia Syslinuxu nie je kompaktibilná s ďalším obrazom, "
|
"Syslinux %s.\n\nAk nová verzia Syslinuxu nie je kompaktibilná s ďalším obrazom, "
|
||||||
"je možné, že program Rufus neobsahuje dva doplnkové súbory, ktoré budú musieť byť stiahnuté "
|
"je možné, že program Rufus neobsahuje dva doplnkové súbory, ktoré budú musieť byť stiahnuté "
|
||||||
"z internetu (ldlinux.sys a ldlinux.bss):\n"
|
"z internetu (ldlinux.sys a ldlinux.bss):\n"
|
||||||
|
@ -10404,7 +10404,7 @@ t MSG_111 "Nezdružljiva velikost gruče"
|
||||||
t MSG_112 "Formatiranje velikih nosilcev UDF lahko traja veliko časa. Pri hitrostih USB 2.0 je predvideno "
|
t MSG_112 "Formatiranje velikih nosilcev UDF lahko traja veliko časa. Pri hitrostih USB 2.0 je predvideno "
|
||||||
"trajanje formatiranja %d:%02d, med čimer se kazalnik poteka ne bo premaknil. Prosim, bodite potrpežljivi!"
|
"trajanje formatiranja %d:%02d, med čimer se kazalnik poteka ne bo premaknil. Prosim, bodite potrpežljivi!"
|
||||||
t MSG_113 "Velik nosilec UDF"
|
t MSG_113 "Velik nosilec UDF"
|
||||||
t MSG_114 "Ta slika uporablja Syslinux %s, toda ta aplikacija vsebuje le namestitvene datoteke za "
|
t MSG_114 "Ta slika uporablja Syslinux %s%s, toda ta aplikacija vsebuje le namestitvene datoteke za "
|
||||||
"Syslinux %s.\n\nKer novejše verzije Syslinuxa niso združljive in Rufus ne more vsebovati vseh, "
|
"Syslinux %s.\n\nKer novejše verzije Syslinuxa niso združljive in Rufus ne more vsebovati vseh, "
|
||||||
"morata biti prenešeni še dve dodatni datoteki (ldlinux.sys in ldlinux.bss):\n"
|
"morata biti prenešeni še dve dodatni datoteki (ldlinux.sys in ldlinux.bss):\n"
|
||||||
"- Izberite \"Da\", da se povežete na internet in prenesete ti dve datoteki.\n"
|
"- Izberite \"Da\", da se povežete na internet in prenesete ti dve datoteki.\n"
|
||||||
|
@ -11203,7 +11203,7 @@ t MSG_111 "Klusterstorlek stöds ej"
|
||||||
t MSG_112 "Att formatera en stor UDF-volum kan ta lång tid. Vid USB 2.0-hastigheter, är den beräknade formaterings- "
|
t MSG_112 "Att formatera en stor UDF-volum kan ta lång tid. Vid USB 2.0-hastigheter, är den beräknade formaterings- "
|
||||||
"tiden runt %d:%02d, och under tiden kan förloppsindikatorn se ut att stå stilla."
|
"tiden runt %d:%02d, och under tiden kan förloppsindikatorn se ut att stå stilla."
|
||||||
t MSG_113 "Stor UDF-volum"
|
t MSG_113 "Stor UDF-volum"
|
||||||
t MSG_114 "Denna avbild använder Syslinux %s men detta programmet innehåller endast installationsfiler för "
|
t MSG_114 "Denna avbild använder Syslinux %s%s men detta programmet innehåller endast installationsfiler för "
|
||||||
"Syslinux %s.\n\nEftersom nya versioner av Syslinux inte är kompatibla med varandra, skulle det vara "
|
"Syslinux %s.\n\nEftersom nya versioner av Syslinux inte är kompatibla med varandra, skulle det vara "
|
||||||
"omöjligt att alla fanns med i Rufus, så därför måste två filer laddas ned från "
|
"omöjligt att alla fanns med i Rufus, så därför måste två filer laddas ned från "
|
||||||
"internet ('ldlinux.sys' och 'ldlinux.bss'):\n"
|
"internet ('ldlinux.sys' och 'ldlinux.bss'):\n"
|
||||||
|
@ -11619,7 +11619,7 @@ t MSG_111 "Uyumsuz Ayırma Boyutu"
|
||||||
t MSG_112 "Geniş bir UDF Biriminin biçimlendirilmesi çok uzun bir süre alabilir. USB 2.0 hızında, Tahmini biçimlendirme "
|
t MSG_112 "Geniş bir UDF Biriminin biçimlendirilmesi çok uzun bir süre alabilir. USB 2.0 hızında, Tahmini biçimlendirme "
|
||||||
"süresi %d:%02d, İlerleme çubuğu donmuş görünüyorken. Lütfen sabırlı olun!"
|
"süresi %d:%02d, İlerleme çubuğu donmuş görünüyorken. Lütfen sabırlı olun!"
|
||||||
t MSG_113 "Geniş UDF Birimi"
|
t MSG_113 "Geniş UDF Birimi"
|
||||||
t MSG_114 "Bu yansıma Syslinux %s kullanıyor fakat bu uygulama yalnız Syslinux %s için yükleme dosyalarını "
|
t MSG_114 "Bu yansıma Syslinux %s%s kullanıyor fakat bu uygulama yalnız Syslinux %s için yükleme dosyalarını "
|
||||||
"içeriyor.\n\nSyslinux'un yeni sürümleri bir başkasıyla uyumlu olmadığından ve Rufus'un bunların"
|
"içeriyor.\n\nSyslinux'un yeni sürümleri bir başkasıyla uyumlu olmadığından ve Rufus'un bunların"
|
||||||
"tamamını içermesi mümkün olmadığından, iki ek dosyanın('ldlinux.sys' ve 'ldlinux.bss') internet üzerinden "
|
"tamamını içermesi mümkün olmadığından, iki ek dosyanın('ldlinux.sys' ve 'ldlinux.bss') internet üzerinden "
|
||||||
"indirilmesi gerekli:\n"
|
"indirilmesi gerekli:\n"
|
||||||
|
|
39
src/iso.c
39
src/iso.c
|
@ -471,7 +471,7 @@ out:
|
||||||
|
|
||||||
BOOL ExtractISO(const char* src_iso, const char* dest_dir, BOOL scan)
|
BOOL ExtractISO(const char* src_iso, const char* dest_dir, BOOL scan)
|
||||||
{
|
{
|
||||||
size_t i, k, size;
|
size_t i, size;
|
||||||
int j;
|
int j;
|
||||||
uint16_t sl_version;
|
uint16_t sl_version;
|
||||||
FILE* fd;
|
FILE* fd;
|
||||||
|
@ -480,11 +480,10 @@ BOOL ExtractISO(const char* src_iso, const char* dest_dir, BOOL scan)
|
||||||
udf_t* p_udf = NULL;
|
udf_t* p_udf = NULL;
|
||||||
udf_dirent_t* p_udf_root;
|
udf_dirent_t* p_udf_root;
|
||||||
LONG progress_style;
|
LONG progress_style;
|
||||||
char *tmp, *buf;
|
char *tmp, *buf, *ext;
|
||||||
char path[MAX_PATH];
|
char path[MAX_PATH];
|
||||||
const char* basedir[] = { "i386", "minint" };
|
const char* basedir[] = { "i386", "minint" };
|
||||||
const char* tmp_sif = ".\\txtsetup.sif~";
|
const char* tmp_sif = ".\\txtsetup.sif~";
|
||||||
const char ISOLINUX[] = { 'I', 'S', 'O', 'L', 'I', 'N', 'U', 'X', ' ' };
|
|
||||||
iso_extension_mask_t iso_extension_mask = ISO_EXTENSION_ALL;
|
iso_extension_mask_t iso_extension_mask = ISO_EXTENSION_ALL;
|
||||||
|
|
||||||
if ((!enable_iso) || (src_iso == NULL) || (dest_dir == NULL))
|
if ((!enable_iso) || (src_iso == NULL) || (dest_dir == NULL))
|
||||||
|
@ -589,7 +588,12 @@ out:
|
||||||
if (!IsStrArrayEmpty(config_path)) {
|
if (!IsStrArrayEmpty(config_path)) {
|
||||||
safe_strcpy(iso_report.cfg_path, sizeof(iso_report.cfg_path), config_path.String[0]);
|
safe_strcpy(iso_report.cfg_path, sizeof(iso_report.cfg_path), config_path.String[0]);
|
||||||
for (i=1; i<config_path.Index; i++) {
|
for (i=1; i<config_path.Index; i++) {
|
||||||
if (safe_strlen(iso_report.cfg_path) > safe_strlen(config_path.String[i]))
|
// Tails uses an '/EFI/BOOT/isolinux.cfg' along with a '/isolinux/isolinux.cfg'
|
||||||
|
// which are the exact same length. However, only the /isolinux one will work,
|
||||||
|
// so for now, at equal length, always pick the latest.
|
||||||
|
// We may have to revisit this and prefer a path that contains '/isolinux' if
|
||||||
|
// this hack is not enough for other images.
|
||||||
|
if (safe_strlen(iso_report.cfg_path) >= safe_strlen(config_path.String[i]))
|
||||||
safe_strcpy(iso_report.cfg_path, sizeof(iso_report.cfg_path), config_path.String[i]);
|
safe_strcpy(iso_report.cfg_path, sizeof(iso_report.cfg_path), config_path.String[i]);
|
||||||
}
|
}
|
||||||
uprintf("Will use %s for Syslinux\n", iso_report.cfg_path);
|
uprintf("Will use %s for Syslinux\n", iso_report.cfg_path);
|
||||||
|
@ -608,20 +612,15 @@ out:
|
||||||
}
|
}
|
||||||
fread(buf, 1, size, fd);
|
fread(buf, 1, size, fd);
|
||||||
fclose(fd);
|
fclose(fd);
|
||||||
for (k=0; k<size-16; k++) {
|
sl_version = GetSyslinuxVersion(buf, size, &ext);
|
||||||
if (memcmp(&buf[k], ISOLINUX, sizeof(ISOLINUX)) == 0) {
|
if (iso_report.sl_version == 0) {
|
||||||
k += sizeof(ISOLINUX);
|
safe_strcpy(iso_report.sl_version_ext, sizeof(iso_report.sl_version_ext), ext);
|
||||||
sl_version = (((uint8_t)strtoul(&buf[k], &tmp, 10))<<8) + (uint8_t)strtoul(&tmp[1], NULL, 10);
|
iso_report.sl_version = sl_version;
|
||||||
if (iso_report.sl_version == 0) {
|
j = (int)i;
|
||||||
iso_report.sl_version = sl_version;
|
} else if ((iso_report.sl_version != sl_version) || (safe_strcmp(iso_report.sl_version_ext, ext) != 0)) {
|
||||||
j = (int)i;
|
uprintf("Found conflicting %s versions:\n '%s' (%d.%02d%s) vs '%s' (%d.%02d%s)\n", isolinux_bin,
|
||||||
} else if (iso_report.sl_version != sl_version) {
|
isolinux_path.String[j], SL_MAJOR(iso_report.sl_version), SL_MINOR(iso_report.sl_version),
|
||||||
uprintf("Found conflicting %s versions:\n '%s' (%d.%02d) vs '%s' (%d.%02d)\n", isolinux_bin,
|
iso_report.sl_version_ext, isolinux_path.String[i], SL_MAJOR(sl_version), SL_MINOR(sl_version), ext);
|
||||||
isolinux_path.String[j], SL_MAJOR(iso_report.sl_version), SL_MINOR(iso_report.sl_version),
|
|
||||||
isolinux_path.String[i], SL_MAJOR(sl_version), SL_MINOR(sl_version));
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
free(buf);
|
free(buf);
|
||||||
_unlink(dot_isolinux_bin);
|
_unlink(dot_isolinux_bin);
|
||||||
|
@ -630,8 +629,8 @@ out:
|
||||||
if (iso_report.sl_version != 0) {
|
if (iso_report.sl_version != 0) {
|
||||||
static_sprintf(iso_report.sl_version_str, "%d.%02d",
|
static_sprintf(iso_report.sl_version_str, "%d.%02d",
|
||||||
SL_MAJOR(iso_report.sl_version), SL_MINOR(iso_report.sl_version));
|
SL_MAJOR(iso_report.sl_version), SL_MINOR(iso_report.sl_version));
|
||||||
uprintf("Detected Isolinux version: %s (from '%s')",
|
uprintf("Detected Isolinux version: %s%s (from '%s')",
|
||||||
iso_report.sl_version_str, isolinux_path.String[j]);
|
iso_report.sl_version_str, iso_report.sl_version_ext, isolinux_path.String[j]);
|
||||||
if ( (has_ldlinux_c32 && (SL_MAJOR(iso_report.sl_version) < 5))
|
if ( (has_ldlinux_c32 && (SL_MAJOR(iso_report.sl_version) < 5))
|
||||||
|| (!has_ldlinux_c32 && (SL_MAJOR(iso_report.sl_version) >= 5)) )
|
|| (!has_ldlinux_c32 && (SL_MAJOR(iso_report.sl_version) >= 5)) )
|
||||||
uprintf("Warning: Conflict between Isolinux version and the presence of ldlinux.c32...\n");
|
uprintf("Warning: Conflict between Isolinux version and the presence of ldlinux.c32...\n");
|
||||||
|
|
26
src/net.c
26
src/net.c
|
@ -41,6 +41,9 @@
|
||||||
/* Default delay between update checks (1 day) */
|
/* Default delay between update checks (1 day) */
|
||||||
#define DEFAULT_UPDATE_INTERVAL (24*3600)
|
#define DEFAULT_UPDATE_INTERVAL (24*3600)
|
||||||
|
|
||||||
|
DWORD DownloadStatus;
|
||||||
|
BOOL PromptOnError = TRUE;
|
||||||
|
|
||||||
extern BOOL force_update;
|
extern BOOL force_update;
|
||||||
static DWORD error_code;
|
static DWORD error_code;
|
||||||
static BOOL update_check_in_progress = FALSE;
|
static BOOL update_check_in_progress = FALSE;
|
||||||
|
@ -243,7 +246,7 @@ DWORD DownloadFile(const char* url, const char* file, HWND hProgressDialog)
|
||||||
{
|
{
|
||||||
HWND hProgressBar = NULL;
|
HWND hProgressBar = NULL;
|
||||||
BOOL r = FALSE;
|
BOOL r = FALSE;
|
||||||
DWORD dwFlags, dwSize, dwDownloaded, dwTotalSize, dwStatus;
|
DWORD dwFlags, dwSize, dwDownloaded, dwTotalSize;
|
||||||
FILE* fd = NULL;
|
FILE* fd = NULL;
|
||||||
LONG progress_style;
|
LONG progress_style;
|
||||||
const char* accept_types[] = {"*/*\0", NULL};
|
const char* accept_types[] = {"*/*\0", NULL};
|
||||||
|
@ -255,6 +258,7 @@ DWORD DownloadFile(const char* url, const char* file, HWND hProgressDialog)
|
||||||
size_t last_slash;
|
size_t last_slash;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
DownloadStatus = 0;
|
||||||
if (hProgressDialog != NULL) {
|
if (hProgressDialog != NULL) {
|
||||||
// Use the progress control provided, if any
|
// Use the progress control provided, if any
|
||||||
hProgressBar = GetDlgItem(hProgressDialog, IDC_PROGRESS);
|
hProgressBar = GetDlgItem(hProgressDialog, IDC_PROGRESS);
|
||||||
|
@ -320,12 +324,12 @@ DWORD DownloadFile(const char* url, const char* file, HWND hProgressDialog)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get the file size
|
// Get the file size
|
||||||
dwSize = sizeof(dwStatus);
|
dwSize = sizeof(DownloadStatus);
|
||||||
dwStatus = 404;
|
DownloadStatus = 404;
|
||||||
HttpQueryInfoA(hRequest, HTTP_QUERY_STATUS_CODE|HTTP_QUERY_FLAG_NUMBER, (LPVOID)&dwStatus, &dwSize, NULL);
|
HttpQueryInfoA(hRequest, HTTP_QUERY_STATUS_CODE|HTTP_QUERY_FLAG_NUMBER, (LPVOID)&DownloadStatus, &dwSize, NULL);
|
||||||
if (dwStatus != 200) {
|
if (DownloadStatus != 200) {
|
||||||
error_code = ERROR_INTERNET_ITEM_NOT_FOUND;
|
error_code = ERROR_INTERNET_ITEM_NOT_FOUND;
|
||||||
uprintf("Unable to access file: Server status %d\n", dwStatus);
|
uprintf("Unable to access file: Server status %d\n", DownloadStatus);
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
dwSize = sizeof(dwTotalSize);
|
dwSize = sizeof(dwTotalSize);
|
||||||
|
@ -373,10 +377,12 @@ out:
|
||||||
if (fd != NULL) fclose(fd);
|
if (fd != NULL) fclose(fd);
|
||||||
if (!r) {
|
if (!r) {
|
||||||
_unlink(file);
|
_unlink(file);
|
||||||
PrintStatus(0, FALSE, MSG_242);
|
if (PromptOnError) {
|
||||||
SetLastError(error_code);
|
PrintStatus(0, FALSE, MSG_242);
|
||||||
MessageBoxU(hMainDialog, IS_ERROR(FormatStatus)?StrError(FormatStatus, FALSE):WinInetErrorString(),
|
SetLastError(error_code);
|
||||||
lmprintf(MSG_044), MB_OK|MB_ICONERROR|MB_IS_RTL);
|
MessageBoxU(hMainDialog, IS_ERROR(FormatStatus)?StrError(FormatStatus, FALSE):WinInetErrorString(),
|
||||||
|
lmprintf(MSG_044), MB_OK|MB_ICONERROR|MB_IS_RTL);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (hRequest) InternetCloseHandle(hRequest);
|
if (hRequest) InternetCloseHandle(hRequest);
|
||||||
if (hConnection) InternetCloseHandle(hConnection);
|
if (hConnection) InternetCloseHandle(hConnection);
|
||||||
|
|
51
src/rufus.c
51
src/rufus.c
|
@ -125,6 +125,7 @@ BOOL enable_HDDs = FALSE, advanced_mode = TRUE, force_update = FALSE, use_fake_u
|
||||||
int dialog_showing = 0;
|
int dialog_showing = 0;
|
||||||
uint16_t rufus_version[4], embedded_sl_version[2];
|
uint16_t rufus_version[4], embedded_sl_version[2];
|
||||||
char embedded_sl_version_str[2][12] = { "?.??", "?.??" };
|
char embedded_sl_version_str[2][12] = { "?.??", "?.??" };
|
||||||
|
char embedded_sl_version_ext[2][32];
|
||||||
RUFUS_UPDATE update = { {0,0,0,0}, {0,0}, NULL, NULL};
|
RUFUS_UPDATE update = { {0,0,0,0}, {0,0}, NULL, NULL};
|
||||||
StrArray DriveID, DriveLabel;
|
StrArray DriveID, DriveLabel;
|
||||||
extern char szStatusMessage[256];
|
extern char szStatusMessage[256];
|
||||||
|
@ -1065,13 +1066,13 @@ void ToggleImage(BOOL enable)
|
||||||
static BOOL BootCheck(void)
|
static BOOL BootCheck(void)
|
||||||
{
|
{
|
||||||
int i, fs, bt, dt, r;
|
int i, fs, bt, dt, r;
|
||||||
FILE* fd;
|
FILE *fd;
|
||||||
DWORD len;
|
DWORD len;
|
||||||
BOOL in_files_dir = FALSE;
|
BOOL in_files_dir = FALSE;
|
||||||
const char* ldlinux = "ldlinux";
|
const char* ldlinux = "ldlinux";
|
||||||
const char* syslinux = "syslinux";
|
const char* syslinux = "syslinux";
|
||||||
const char* ldlinux_ext[3] = { "sys", "bss", "c32" };
|
const char* ldlinux_ext[3] = { "sys", "bss", "c32" };
|
||||||
char tmp[MAX_PATH];
|
char tmp[MAX_PATH], tmp2[MAX_PATH];
|
||||||
|
|
||||||
syslinux_ldlinux_len[0] = 0; syslinux_ldlinux_len[1] = 0;
|
syslinux_ldlinux_len[0] = 0; syslinux_ldlinux_len[1] = 0;
|
||||||
dt = (int)ComboBox_GetItemData(hBootType, ComboBox_GetCurSel(hBootType));
|
dt = (int)ComboBox_GetItemData(hBootType, ComboBox_GetCurSel(hBootType));
|
||||||
|
@ -1174,7 +1175,8 @@ static BOOL BootCheck(void)
|
||||||
IGNORE_RETVAL(_chdir(FILES_DIR));
|
IGNORE_RETVAL(_chdir(FILES_DIR));
|
||||||
for (i=0; i<2; i++) {
|
for (i=0; i<2; i++) {
|
||||||
// Check if we already have the relevant ldlinux_v#.##.sys & ldlinux_v#.##.bss files
|
// Check if we already have the relevant ldlinux_v#.##.sys & ldlinux_v#.##.bss files
|
||||||
static_sprintf(tmp, "%s-%s/%s.%s", syslinux, iso_report.sl_version_str, ldlinux, ldlinux_ext[i]);
|
static_sprintf(tmp, "%s-%s%s/%s.%s", syslinux, iso_report.sl_version_str,
|
||||||
|
iso_report.sl_version_ext, ldlinux, ldlinux_ext[i]);
|
||||||
fd = fopen(tmp, "rb");
|
fd = fopen(tmp, "rb");
|
||||||
if (fd != NULL) {
|
if (fd != NULL) {
|
||||||
fseek(fd, 0, SEEK_END);
|
fseek(fd, 0, SEEK_END);
|
||||||
|
@ -1183,21 +1185,46 @@ static BOOL BootCheck(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ((syslinux_ldlinux_len[0] != 0) && (syslinux_ldlinux_len[1] != 0)) {
|
if ((syslinux_ldlinux_len[0] != 0) && (syslinux_ldlinux_len[1] != 0)) {
|
||||||
uprintf("Will reuse '%s.%s' and '%s.%s' from './" FILES_DIR "/%s/%s-%s/' for Syslinux installation\n",
|
uprintf("Will reuse '%s.%s' and '%s.%s' from './" FILES_DIR "/%s/%s-%s%s/' for Syslinux installation\n",
|
||||||
ldlinux, ldlinux_ext[0], ldlinux, ldlinux_ext[1], FILES_DIR, syslinux, iso_report.sl_version_str);
|
ldlinux, ldlinux_ext[0], ldlinux, ldlinux_ext[1], FILES_DIR, syslinux,
|
||||||
|
iso_report.sl_version_str, iso_report.sl_version_ext);
|
||||||
} else {
|
} else {
|
||||||
r = MessageBoxU(hMainDialog, lmprintf(MSG_114, iso_report.sl_version_str, embedded_sl_version_str[1]),
|
r = MessageBoxU(hMainDialog, lmprintf(MSG_114, iso_report.sl_version_str, iso_report.sl_version_ext,
|
||||||
|
embedded_sl_version_str[1]),
|
||||||
lmprintf(MSG_115), MB_YESNO|MB_ICONWARNING|MB_IS_RTL);
|
lmprintf(MSG_115), MB_YESNO|MB_ICONWARNING|MB_IS_RTL);
|
||||||
if (r != IDYES)
|
if (r != IDYES)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
for (i=0; i<2; i++) {
|
for (i=0; i<2; i++) {
|
||||||
static_sprintf(tmp, "%s-%s", syslinux, iso_report.sl_version_str);
|
static_sprintf(tmp, "%s-%s", syslinux, iso_report.sl_version_str);
|
||||||
IGNORE_RETVAL(_mkdir(tmp));
|
IGNORE_RETVAL(_mkdir(tmp));
|
||||||
|
if (*iso_report.sl_version_ext != 0) {
|
||||||
|
IGNORE_RETVAL(_chdir(tmp));
|
||||||
|
IGNORE_RETVAL(_mkdir(&iso_report.sl_version_ext[1]));
|
||||||
|
IGNORE_RETVAL(_chdir(".."));
|
||||||
|
}
|
||||||
static_sprintf(tmp, "%s.%s %s", ldlinux, ldlinux_ext[i], iso_report.sl_version_str);
|
static_sprintf(tmp, "%s.%s %s", ldlinux, ldlinux_ext[i], iso_report.sl_version_str);
|
||||||
SetWindowTextU(hISOProgressDlg, lmprintf(MSG_085, tmp));
|
SetWindowTextU(hISOProgressDlg, lmprintf(MSG_085, tmp));
|
||||||
static_sprintf(tmp, "%s/%s-%s/%s.%s", FILES_URL, syslinux, iso_report.sl_version_str, ldlinux, ldlinux_ext[i]);
|
static_sprintf(tmp, "%s/%s-%s%s/%s.%s", FILES_URL, syslinux, iso_report.sl_version_str,
|
||||||
|
iso_report.sl_version_ext, ldlinux, ldlinux_ext[i]);
|
||||||
SetWindowTextU(hISOFileName, tmp);
|
SetWindowTextU(hISOFileName, tmp);
|
||||||
|
PromptOnError = (*iso_report.sl_version_ext == 0);
|
||||||
syslinux_ldlinux_len[i] = DownloadFile(tmp, &tmp[sizeof(FILES_URL)], hISOProgressDlg);
|
syslinux_ldlinux_len[i] = DownloadFile(tmp, &tmp[sizeof(FILES_URL)], hISOProgressDlg);
|
||||||
|
PromptOnError = TRUE;
|
||||||
|
if ((syslinux_ldlinux_len[i] == 0) && (DownloadStatus == 404) && (*iso_report.sl_version_ext != 0)) {
|
||||||
|
// Couldn't locate the file on the server => try to download without the version extra
|
||||||
|
uprintf("Extended version was not found, trying main version\n");
|
||||||
|
static_sprintf(tmp, "%s/%s-%s/%s.%s", FILES_URL, syslinux, iso_report.sl_version_str,
|
||||||
|
ldlinux, ldlinux_ext[i]);
|
||||||
|
SetWindowTextU(hISOFileName, tmp);
|
||||||
|
syslinux_ldlinux_len[i] = DownloadFile(tmp, &tmp[sizeof(FILES_URL)], hISOProgressDlg);
|
||||||
|
if (syslinux_ldlinux_len[i] != 0) {
|
||||||
|
// Duplicate the file so that the user won't be prompted to download again
|
||||||
|
static_sprintf(tmp, "%s-%s\\%s.%s", syslinux, iso_report.sl_version_str, ldlinux, ldlinux_ext[i]);
|
||||||
|
static_sprintf(tmp2, "%s-%s\\%s\\%s.%s", syslinux, iso_report.sl_version_str,
|
||||||
|
&iso_report.sl_version_ext[1], ldlinux, ldlinux_ext[i]);
|
||||||
|
CopyFileA(tmp, tmp2, FALSE);
|
||||||
|
}
|
||||||
|
}
|
||||||
if (syslinux_ldlinux_len[i] == 0) {
|
if (syslinux_ldlinux_len[i] == 0) {
|
||||||
uprintf("Couldn't download the files - cancelling\n");
|
uprintf("Couldn't download the files - cancelling\n");
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
@ -1249,7 +1276,7 @@ void InitDialog(HWND hDlg)
|
||||||
DWORD len;
|
DWORD len;
|
||||||
HDC hDC;
|
HDC hDC;
|
||||||
int i, i16, s16;
|
int i, i16, s16;
|
||||||
char tmp[128], *token, *buf;
|
char tmp[128], *token, *buf, *ext;
|
||||||
static char* resource[2] = { MAKEINTRESOURCEA(IDR_SL_LDLINUX_V4_SYS), MAKEINTRESOURCEA(IDR_SL_LDLINUX_V5_SYS) };
|
static char* resource[2] = { MAKEINTRESOURCEA(IDR_SL_LDLINUX_V4_SYS), MAKEINTRESOURCEA(IDR_SL_LDLINUX_V5_SYS) };
|
||||||
|
|
||||||
#ifdef RUFUS_TEST
|
#ifdef RUFUS_TEST
|
||||||
|
@ -1301,14 +1328,16 @@ void InitDialog(HWND hDlg)
|
||||||
uprintf(APPLICATION_NAME " version: %d.%d.%d.%d\n", rufus_version[0], rufus_version[1], rufus_version[2], rufus_version[3]);
|
uprintf(APPLICATION_NAME " version: %d.%d.%d.%d\n", rufus_version[0], rufus_version[1], rufus_version[2], rufus_version[3]);
|
||||||
for (i=0; i<ARRAYSIZE(resource); i++) {
|
for (i=0; i<ARRAYSIZE(resource); i++) {
|
||||||
buf = (char*)GetResource(hMainInstance, resource[i], _RT_RCDATA, "ldlinux_sys", &len, FALSE);
|
buf = (char*)GetResource(hMainInstance, resource[i], _RT_RCDATA, "ldlinux_sys", &len, FALSE);
|
||||||
if ((buf == NULL) || (len < 16)) {
|
if (buf == NULL) {
|
||||||
uprintf("Warning: could not read embedded Syslinux v%d version", i+4);
|
uprintf("Warning: could not read embedded Syslinux v%d version", i+4);
|
||||||
} else {
|
} else {
|
||||||
embedded_sl_version[i] = (((uint8_t)strtoul(&buf[0xb], &token, 10))<<8) + (uint8_t)strtoul(&token[1], NULL, 10);
|
embedded_sl_version[i] = GetSyslinuxVersion(buf, len, &ext);
|
||||||
static_sprintf(embedded_sl_version_str[i], "%d.%02d", SL_MAJOR(embedded_sl_version[i]), SL_MINOR(embedded_sl_version[i]));
|
static_sprintf(embedded_sl_version_str[i], "%d.%02d", SL_MAJOR(embedded_sl_version[i]), SL_MINOR(embedded_sl_version[i]));
|
||||||
|
safe_strcpy(embedded_sl_version_ext[i], sizeof(embedded_sl_version_ext[i]), ext);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
uprintf("Syslinux versions: %s, %s", embedded_sl_version_str[0], embedded_sl_version_str[1]);
|
uprintf("Syslinux versions: %s%s, %s%s", embedded_sl_version_str[0], embedded_sl_version_ext[0],
|
||||||
|
embedded_sl_version_str[1], embedded_sl_version_ext[1]);
|
||||||
uprintf("Windows version: %s\n", WindowsVersionStr);
|
uprintf("Windows version: %s\n", WindowsVersionStr);
|
||||||
uprintf("Locale ID: 0x%04X\n", GetUserDefaultUILanguage());
|
uprintf("Locale ID: 0x%04X\n", GetUserDefaultUILanguage());
|
||||||
|
|
||||||
|
|
|
@ -249,6 +249,7 @@ typedef struct {
|
||||||
BOOL is_vhd;
|
BOOL is_vhd;
|
||||||
uint16_t sl_version; // Syslinux/Isolinux version
|
uint16_t sl_version; // Syslinux/Isolinux version
|
||||||
char sl_version_str[12];
|
char sl_version_str[12];
|
||||||
|
char sl_version_ext[32];
|
||||||
} RUFUS_ISO_REPORT;
|
} RUFUS_ISO_REPORT;
|
||||||
|
|
||||||
/* Isolate the Syslinux version numbers */
|
/* Isolate the Syslinux version numbers */
|
||||||
|
@ -319,7 +320,8 @@ extern HWND hISOProgressDlg, hISOProgressBar, hISOFileName, hDiskID;
|
||||||
extern float fScale;
|
extern float fScale;
|
||||||
extern char szFolderPath[MAX_PATH], app_dir[MAX_PATH];
|
extern char szFolderPath[MAX_PATH], app_dir[MAX_PATH];
|
||||||
extern char* image_path;
|
extern char* image_path;
|
||||||
extern DWORD FormatStatus;
|
extern DWORD FormatStatus, DownloadStatus;
|
||||||
|
extern BOOL PromptOnError;
|
||||||
extern DWORD syslinux_ldlinux_len[2];
|
extern DWORD syslinux_ldlinux_len[2];
|
||||||
extern RUFUS_DRIVE_INFO SelectedDrive;
|
extern RUFUS_DRIVE_INFO SelectedDrive;
|
||||||
extern const int nb_steps[FS_MAX];
|
extern const int nb_steps[FS_MAX];
|
||||||
|
@ -363,6 +365,7 @@ extern BOOL ExtractDOS(const char* path);
|
||||||
extern BOOL ExtractISO(const char* src_iso, const char* dest_dir, BOOL scan);
|
extern BOOL ExtractISO(const char* src_iso, const char* dest_dir, BOOL scan);
|
||||||
extern int64_t ExtractISOFile(const char* iso, const char* iso_file, const char* dest_file, DWORD attributes);
|
extern int64_t ExtractISOFile(const char* iso, const char* iso_file, const char* dest_file, DWORD attributes);
|
||||||
extern BOOL InstallSyslinux(DWORD drive_index, char drive_letter);
|
extern BOOL InstallSyslinux(DWORD drive_index, char drive_letter);
|
||||||
|
extern uint16_t GetSyslinuxVersion(char* buf, size_t buf_size, char** ext);
|
||||||
extern BOOL CreateProgress(void);
|
extern BOOL CreateProgress(void);
|
||||||
extern BOOL SetAutorun(const char* path);
|
extern BOOL SetAutorun(const char* path);
|
||||||
extern char* FileDialog(BOOL save, char* path, const ext_t* ext, DWORD options);
|
extern char* FileDialog(BOOL save, char* path, const ext_t* ext, DWORD options);
|
||||||
|
|
12
src/rufus.rc
12
src/rufus.rc
|
@ -32,7 +32,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||||
|
|
||||||
IDD_DIALOG DIALOGEX 12, 12, 206, 329
|
IDD_DIALOG DIALOGEX 12, 12, 206, 329
|
||||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Rufus 1.4.10.508"
|
CAPTION "Rufus 1.4.10.509"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
BEGIN
|
BEGIN
|
||||||
DEFPUSHBUTTON "Start",IDC_START,94,291,50,14
|
DEFPUSHBUTTON "Start",IDC_START,94,291,50,14
|
||||||
|
@ -165,7 +165,7 @@ END
|
||||||
RTL_IDD_DIALOG DIALOGEX 12, 12, 206, 329
|
RTL_IDD_DIALOG DIALOGEX 12, 12, 206, 329
|
||||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
EXSTYLE WS_EX_RTLREADING | WS_EX_APPWINDOW | WS_EX_LAYOUTRTL
|
EXSTYLE WS_EX_RTLREADING | WS_EX_APPWINDOW | WS_EX_LAYOUTRTL
|
||||||
CAPTION "Rufus 1.4.10.508"
|
CAPTION "Rufus 1.4.10.509"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
BEGIN
|
BEGIN
|
||||||
DEFPUSHBUTTON "Start",IDC_START,94,291,50,14
|
DEFPUSHBUTTON "Start",IDC_START,94,291,50,14
|
||||||
|
@ -428,8 +428,8 @@ END
|
||||||
//
|
//
|
||||||
|
|
||||||
VS_VERSION_INFO VERSIONINFO
|
VS_VERSION_INFO VERSIONINFO
|
||||||
FILEVERSION 1,4,10,508
|
FILEVERSION 1,4,10,509
|
||||||
PRODUCTVERSION 1,4,10,508
|
PRODUCTVERSION 1,4,10,509
|
||||||
FILEFLAGSMASK 0x3fL
|
FILEFLAGSMASK 0x3fL
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
FILEFLAGS 0x1L
|
FILEFLAGS 0x1L
|
||||||
|
@ -446,13 +446,13 @@ BEGIN
|
||||||
BEGIN
|
BEGIN
|
||||||
VALUE "CompanyName", "Akeo Consulting (http://akeo.ie)"
|
VALUE "CompanyName", "Akeo Consulting (http://akeo.ie)"
|
||||||
VALUE "FileDescription", "Rufus"
|
VALUE "FileDescription", "Rufus"
|
||||||
VALUE "FileVersion", "1.4.10.508"
|
VALUE "FileVersion", "1.4.10.509"
|
||||||
VALUE "InternalName", "Rufus"
|
VALUE "InternalName", "Rufus"
|
||||||
VALUE "LegalCopyright", "© 2011-2014 Pete Batard (GPL v3)"
|
VALUE "LegalCopyright", "© 2011-2014 Pete Batard (GPL v3)"
|
||||||
VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html"
|
VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html"
|
||||||
VALUE "OriginalFilename", "rufus.exe"
|
VALUE "OriginalFilename", "rufus.exe"
|
||||||
VALUE "ProductName", "Rufus"
|
VALUE "ProductName", "Rufus"
|
||||||
VALUE "ProductVersion", "1.4.10.508"
|
VALUE "ProductVersion", "1.4.10.509"
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
BLOCK "VarFileInfo"
|
BLOCK "VarFileInfo"
|
||||||
|
|
|
@ -109,7 +109,8 @@ BOOL InstallSyslinux(DWORD drive_index, char drive_letter)
|
||||||
syslinux_ldlinux[i] = (unsigned char*) malloc(syslinux_ldlinux_len[i]);
|
syslinux_ldlinux[i] = (unsigned char*) malloc(syslinux_ldlinux_len[i]);
|
||||||
if (syslinux_ldlinux[i] == NULL)
|
if (syslinux_ldlinux[i] == NULL)
|
||||||
goto out;
|
goto out;
|
||||||
static_sprintf(path, "%s/%s-%s/%s.%s", FILES_DIR, syslinux, iso_report.sl_version_str, ldlinux, i==0?"sys":"bss");
|
static_sprintf(path, "%s/%s-%s%s/%s.%s", FILES_DIR, syslinux, iso_report.sl_version_str,
|
||||||
|
iso_report.sl_version_ext, ldlinux, i==0?"sys":"bss");
|
||||||
fd = fopen(path, "rb");
|
fd = fopen(path, "rb");
|
||||||
if (fd == NULL) {
|
if (fd == NULL) {
|
||||||
uprintf("Could not open %s\n", path);
|
uprintf("Could not open %s\n", path);
|
||||||
|
@ -300,3 +301,57 @@ out:
|
||||||
safe_closehandle(f_handle);
|
safe_closehandle(f_handle);
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint16_t GetSyslinuxVersion(char* buf, size_t buf_size, char** ext)
|
||||||
|
{
|
||||||
|
size_t i, j;
|
||||||
|
char *p;
|
||||||
|
uint16_t version;
|
||||||
|
const char LINUX[] = { 'L', 'I', 'N', 'U', 'X', ' ' };
|
||||||
|
static char* nullstr = "";
|
||||||
|
|
||||||
|
*ext = nullstr;
|
||||||
|
if (buf_size < 256)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
// Start at 64 to avoid the short incomplete version at the beginning of ldlinux.sys
|
||||||
|
for (i=64; i<buf_size-64; i++) {
|
||||||
|
if (memcmp(&buf[i], LINUX, sizeof(LINUX)) == 0) {
|
||||||
|
// Check for ISO or SYS prefix
|
||||||
|
if (!( ((buf[i-3] == 'I') && (buf[i-2] == 'S') && (buf[i-1] == 'O'))
|
||||||
|
|| ((buf[i-3] == 'S') && (buf[i-2] == 'Y') && (buf[i-1] == 'S')) ))
|
||||||
|
continue;
|
||||||
|
i += sizeof(LINUX);
|
||||||
|
version = (((uint8_t)strtoul(&buf[i], &p, 10))<<8) + (uint8_t)strtoul(&p[1], &p, 10);
|
||||||
|
if (version == 0)
|
||||||
|
continue;
|
||||||
|
p[safe_strlen(p)] = 0;
|
||||||
|
// Ensure that our extra version string starts with a slash
|
||||||
|
*p = '/';
|
||||||
|
// Remove the x.yz- duplicate if present
|
||||||
|
for (j=0; (buf[i+j] == p[1+j]) && (buf[i+j] != ' '); j++);
|
||||||
|
if (p[j+1] == '-')
|
||||||
|
j++;
|
||||||
|
if (j >= 4) {
|
||||||
|
p[j] = '/';
|
||||||
|
p = &p[j];
|
||||||
|
}
|
||||||
|
for (j=safe_strlen(p)-1; j>0; j--) {
|
||||||
|
// Arch Linux affixes a star for their version - who knows what else is out there...
|
||||||
|
if ((p[j] == ' ') || (p[j] == '*'))
|
||||||
|
p[j] = 0;
|
||||||
|
else
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
// Sanitize the string
|
||||||
|
for (j=1; j<safe_strlen(p); j++)
|
||||||
|
// Some people are bound to have slashes in their date strings
|
||||||
|
if ((p[j] == '/') || (p[j] == '\\') || (p[j] == '*'))
|
||||||
|
p[j] = '_';
|
||||||
|
// If all we have is a slash, return the empty string for the extra version
|
||||||
|
*ext = (p[1] == 0)?nullstr:p;
|
||||||
|
return version;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue