summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2011-07-21 06:40:21 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2011-07-21 06:40:21 +0000
commitd1fd4f08f56f6dd46b26b1f41baff425ca71d498 (patch)
tree5b0c1a13cb85cc9e6e42b024877f719ec0f0d913
parenta7c37ea2d04c35628fc1ca9d353df637612303d0 (diff)
downloadrockbox-d1fd4f08f56f6dd46b26b1f41baff425ca71d498.tar.gz
rockbox-d1fd4f08f56f6dd46b26b1f41baff425ca71d498.zip
Fix FS#8656 - Error saving non-current playlist file
Use the plugin buffer to save the playlist copy if there isnt enough buffer already allocated to the inram copy of the playlist git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30184 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/lang/arabic.lang8
-rw-r--r--apps/lang/bulgarian.lang6
-rw-r--r--apps/lang/catala.lang8
-rw-r--r--apps/lang/chinese-simp.lang8
-rw-r--r--apps/lang/chinese-trad.lang6
-rw-r--r--apps/lang/czech.lang8
-rw-r--r--apps/lang/dansk.lang8
-rw-r--r--apps/lang/deutsch.lang8
-rw-r--r--apps/lang/eesti.lang6
-rw-r--r--apps/lang/english-us.lang8
-rw-r--r--apps/lang/english.lang22
-rw-r--r--apps/lang/espanol.lang8
-rw-r--r--apps/lang/esperanto.lang6
-rw-r--r--apps/lang/finnish.lang8
-rw-r--r--apps/lang/francais.lang8
-rw-r--r--apps/lang/galego.lang8
-rw-r--r--apps/lang/greek.lang8
-rw-r--r--apps/lang/hebrew.lang8
-rw-r--r--apps/lang/hindi.lang8
-rw-r--r--apps/lang/hrvatski.lang8
-rw-r--r--apps/lang/islenska.lang8
-rw-r--r--apps/lang/italiano.lang8
-rw-r--r--apps/lang/japanese.lang8
-rw-r--r--apps/lang/korean.lang8
-rw-r--r--apps/lang/latviesu.lang8
-rw-r--r--apps/lang/lietuviu.lang8
-rw-r--r--apps/lang/magyar.lang8
-rw-r--r--apps/lang/nederlands.lang8
-rw-r--r--apps/lang/norsk-nynorsk.lang8
-rw-r--r--apps/lang/norsk.lang8
-rw-r--r--apps/lang/polski.lang8
-rw-r--r--apps/lang/portugues-brasileiro.lang8
-rw-r--r--apps/lang/portugues.lang8
-rw-r--r--apps/lang/romaneste.lang8
-rw-r--r--apps/lang/russian.lang8
-rw-r--r--apps/lang/slovak.lang8
-rw-r--r--apps/lang/slovenscina.lang8
-rw-r--r--apps/lang/srpski.lang8
-rw-r--r--apps/lang/svenska.lang8
-rw-r--r--apps/lang/tagalog.lang8
-rw-r--r--apps/lang/thai.lang8
-rw-r--r--apps/lang/ukrainian.lang8
-rw-r--r--apps/lang/walon.lang8
-rw-r--r--apps/playlist.c26
-rw-r--r--apps/playlist_viewer.c8
-rw-r--r--apps/radio/radio.c6
46 files changed, 217 insertions, 173 deletions
diff --git a/apps/lang/arabic.lang b/apps/lang/arabic.lang
index 82f065e377..0ed7998ae8 100644
--- a/apps/lang/arabic.lang
+++ b/apps/lang/arabic.lang
@@ -3404,19 +3404,19 @@
3404</phrase> 3404</phrase>
3405<phrase> 3405<phrase>
3406 id: LANG_FM_SAVE_CHANGES 3406 id: LANG_FM_SAVE_CHANGES
3407 desc: When you try to exit radio to confirm save 3407 desc: deprecated
3408 user: core 3408 user: core
3409 <source> 3409 <source>
3410 *: none 3410 *: none
3411 radio: "Save Changes?" 3411 radio: ""
3412 </source> 3412 </source>
3413 <dest> 3413 <dest>
3414 *: none 3414 *: none
3415 radio: "حفظ التغييرات ؟" 3415 radio: ""
3416 </dest> 3416 </dest>
3417 <voice> 3417 <voice>
3418 *: none 3418 *: none
3419 radio: "Save Changes?" 3419 radio: ""
3420 </voice> 3420 </voice>
3421</phrase> 3421</phrase>
3422<phrase> 3422<phrase>
diff --git a/apps/lang/bulgarian.lang b/apps/lang/bulgarian.lang
index b47070719e..8abac7708d 100644
--- a/apps/lang/bulgarian.lang
+++ b/apps/lang/bulgarian.lang
@@ -1986,15 +1986,15 @@
1986</phrase> 1986</phrase>
1987<phrase> 1987<phrase>
1988 id: LANG_FM_SAVE_CHANGES 1988 id: LANG_FM_SAVE_CHANGES
1989 desc: When you try to exit radio to confirm save 1989 desc: deprecated
1990 user: core 1990 user: core
1991 <source> 1991 <source>
1992 *: none 1992 *: none
1993 radio: "Save Changes?" 1993 radio: ""
1994 </source> 1994 </source>
1995 <dest> 1995 <dest>
1996 *: none 1996 *: none
1997 radio: "Запазване на промените?" 1997 radio: ""
1998 </dest> 1998 </dest>
1999 <voice> 1999 <voice>
2000 *: none 2000 *: none
diff --git a/apps/lang/catala.lang b/apps/lang/catala.lang
index cb94953987..6f0b0841ca 100644
--- a/apps/lang/catala.lang
+++ b/apps/lang/catala.lang
@@ -5375,19 +5375,19 @@
5375</phrase> 5375</phrase>
5376<phrase> 5376<phrase>
5377 id: LANG_FM_SAVE_CHANGES 5377 id: LANG_FM_SAVE_CHANGES
5378 desc: When you try to exit radio to confirm save 5378 desc: deprecated
5379 user: core 5379 user: core
5380 <source> 5380 <source>
5381 *: none 5381 *: none
5382 radio: "Save Changes?" 5382 radio: ""
5383 </source> 5383 </source>
5384 <dest> 5384 <dest>
5385 *: none 5385 *: none
5386 radio: "Desa els Canvis?" 5386 radio: ""
5387 </dest> 5387 </dest>
5388 <voice> 5388 <voice>
5389 *: none 5389 *: none
5390 radio: "Desa els Canvis?" 5390 radio: ""
5391 </voice> 5391 </voice>
5392</phrase> 5392</phrase>
5393<phrase> 5393<phrase>
diff --git a/apps/lang/chinese-simp.lang b/apps/lang/chinese-simp.lang
index 3594cf6b3c..e44352d7c9 100644
--- a/apps/lang/chinese-simp.lang
+++ b/apps/lang/chinese-simp.lang
@@ -7523,19 +7523,19 @@
7523</phrase> 7523</phrase>
7524<phrase> 7524<phrase>
7525 id: LANG_FM_SAVE_CHANGES 7525 id: LANG_FM_SAVE_CHANGES
7526 desc: When you try to exit radio to confirm save 7526 desc: deprecated
7527 user: core 7527 user: core
7528 <source> 7528 <source>
7529 *: none 7529 *: none
7530 radio: "Save Changes?" 7530 radio: ""
7531 </source> 7531 </source>
7532 <dest> 7532 <dest>
7533 *: none 7533 *: none
7534 radio: "保存变动?" 7534 radio: ""
7535 </dest> 7535 </dest>
7536 <voice> 7536 <voice>
7537 *: none 7537 *: none
7538 radio: "保存变动吗" 7538 radio: ""
7539 </voice> 7539 </voice>
7540</phrase> 7540</phrase>
7541<phrase> 7541<phrase>
diff --git a/apps/lang/chinese-trad.lang b/apps/lang/chinese-trad.lang
index c798f8ccfd..647af4259b 100644
--- a/apps/lang/chinese-trad.lang
+++ b/apps/lang/chinese-trad.lang
@@ -7532,15 +7532,15 @@
7532</phrase> 7532</phrase>
7533<phrase> 7533<phrase>
7534 id: LANG_FM_SAVE_CHANGES 7534 id: LANG_FM_SAVE_CHANGES
7535 desc: When you try to exit radio to confirm save 7535 desc: deprecated
7536 user: core 7536 user: core
7537 <source> 7537 <source>
7538 *: none 7538 *: none
7539 radio: "Save Changes?" 7539 radio: ""
7540 </source> 7540 </source>
7541 <dest> 7541 <dest>
7542 *: none 7542 *: none
7543 radio: "儲存變動?" 7543 radio: ""
7544 </dest> 7544 </dest>
7545 <voice> 7545 <voice>
7546 *: none 7546 *: none
diff --git a/apps/lang/czech.lang b/apps/lang/czech.lang
index 8e93b58ba3..71a3635ce4 100644
--- a/apps/lang/czech.lang
+++ b/apps/lang/czech.lang
@@ -5383,19 +5383,19 @@
5383</phrase> 5383</phrase>
5384<phrase> 5384<phrase>
5385 id: LANG_FM_SAVE_CHANGES 5385 id: LANG_FM_SAVE_CHANGES
5386 desc: When you try to exit radio to confirm save 5386 desc: deprecated
5387 user: core 5387 user: core
5388 <source> 5388 <source>
5389 *: none 5389 *: none
5390 radio: "Save Changes?" 5390 radio: ""
5391 </source> 5391 </source>
5392 <dest> 5392 <dest>
5393 *: none 5393 *: none
5394 radio: "Uložit změny?" 5394 radio: ""
5395 </dest> 5395 </dest>
5396 <voice> 5396 <voice>
5397 *: none 5397 *: none
5398 radio: "Uložit změny?" 5398 radio: ""
5399 </voice> 5399 </voice>
5400</phrase> 5400</phrase>
5401<phrase> 5401<phrase>
diff --git a/apps/lang/dansk.lang b/apps/lang/dansk.lang
index 354848202d..21747e3ee6 100644
--- a/apps/lang/dansk.lang
+++ b/apps/lang/dansk.lang
@@ -6595,19 +6595,19 @@
6595</phrase> 6595</phrase>
6596<phrase> 6596<phrase>
6597 id: LANG_FM_SAVE_CHANGES 6597 id: LANG_FM_SAVE_CHANGES
6598 desc: When you try to exit radio to confirm save 6598 desc: deprecated
6599 user: core 6599 user: core
6600 <source> 6600 <source>
6601 *: none 6601 *: none
6602 radio: "Save Changes?" 6602 radio: ""
6603 </source> 6603 </source>
6604 <dest> 6604 <dest>
6605 *: none 6605 *: none
6606 radio: "Gem ændringer?" 6606 radio: ""
6607 </dest> 6607 </dest>
6608 <voice> 6608 <voice>
6609 *: none 6609 *: none
6610 radio: "Vil du gemme ændringer?" 6610 radio: ""
6611 </voice> 6611 </voice>
6612</phrase> 6612</phrase>
6613<phrase> 6613<phrase>
diff --git a/apps/lang/deutsch.lang b/apps/lang/deutsch.lang
index 3040f1c858..3deb867a0f 100644
--- a/apps/lang/deutsch.lang
+++ b/apps/lang/deutsch.lang
@@ -5385,19 +5385,19 @@
5385</phrase> 5385</phrase>
5386<phrase> 5386<phrase>
5387 id: LANG_FM_SAVE_CHANGES 5387 id: LANG_FM_SAVE_CHANGES
5388 desc: When you try to exit radio to confirm save 5388 desc: deprecated
5389 user: core 5389 user: core
5390 <source> 5390 <source>
5391 *: none 5391 *: none
5392 radio: "Save Changes?" 5392 radio: ""
5393 </source> 5393 </source>
5394 <dest> 5394 <dest>
5395 *: none 5395 *: none
5396 radio: "Änderungen speichern?" 5396 radio: ""
5397 </dest> 5397 </dest>
5398 <voice> 5398 <voice>
5399 *: none 5399 *: none
5400 radio: "Änderungen speichern?" 5400 radio: ""
5401 </voice> 5401 </voice>
5402</phrase> 5402</phrase>
5403<phrase> 5403<phrase>
diff --git a/apps/lang/eesti.lang b/apps/lang/eesti.lang
index ad621a8865..5c19d5093d 100644
--- a/apps/lang/eesti.lang
+++ b/apps/lang/eesti.lang
@@ -7046,13 +7046,13 @@
7046</phrase> 7046</phrase>
7047<phrase> 7047<phrase>
7048 id: LANG_FM_SAVE_CHANGES 7048 id: LANG_FM_SAVE_CHANGES
7049 desc: When you try to exit radio to confirm save 7049 desc: deprecated
7050 user: core 7050 user: core
7051 <source> 7051 <source>
7052 *: "Save Changes?" 7052 *: ""
7053 </source> 7053 </source>
7054 <dest> 7054 <dest>
7055 *: "Save Changes?" 7055 *: ""
7056 </dest> 7056 </dest>
7057 <voice> 7057 <voice>
7058 *: "" 7058 *: ""
diff --git a/apps/lang/english-us.lang b/apps/lang/english-us.lang
index b558db3a92..1dd5196a27 100644
--- a/apps/lang/english-us.lang
+++ b/apps/lang/english-us.lang
@@ -5382,19 +5382,19 @@
5382</phrase> 5382</phrase>
5383<phrase> 5383<phrase>
5384 id: LANG_FM_SAVE_CHANGES 5384 id: LANG_FM_SAVE_CHANGES
5385 desc: When you try to exit radio to confirm save 5385 desc: deprecated
5386 user: core 5386 user: core
5387 <source> 5387 <source>
5388 *: none 5388 *: none
5389 radio: "Save Changes?" 5389 radio: ""
5390 </source> 5390 </source>
5391 <dest> 5391 <dest>
5392 *: none 5392 *: none
5393 radio: "Save Changes?" 5393 radio: ""
5394 </dest> 5394 </dest>
5395 <voice> 5395 <voice>
5396 *: none 5396 *: none
5397 radio: "Save Changes?" 5397 radio: ""
5398 </voice> 5398 </voice>
5399</phrase> 5399</phrase>
5400<phrase> 5400<phrase>
diff --git a/apps/lang/english.lang b/apps/lang/english.lang
index e9d1dbaccc..bd52e17437 100644
--- a/apps/lang/english.lang
+++ b/apps/lang/english.lang
@@ -5466,19 +5466,19 @@
5466</phrase> 5466</phrase>
5467<phrase> 5467<phrase>
5468 id: LANG_FM_SAVE_CHANGES 5468 id: LANG_FM_SAVE_CHANGES
5469 desc: When you try to exit radio to confirm save 5469 desc: deprecated
5470 user: core 5470 user: core
5471 <source> 5471 <source>
5472 *: none 5472 *: none
5473 radio: "Save Changes?" 5473 radio: ""
5474 </source> 5474 </source>
5475 <dest> 5475 <dest>
5476 *: none 5476 *: none
5477 radio: "Save Changes?" 5477 radio: ""
5478 </dest> 5478 </dest>
5479 <voice> 5479 <voice>
5480 *: none 5480 *: none
5481 radio: "Save Changes?" 5481 radio: ""
5482 </voice> 5482 </voice>
5483</phrase> 5483</phrase>
5484<phrase> 5484<phrase>
@@ -12799,3 +12799,17 @@
12799 *: "Current Playlist" 12799 *: "Current Playlist"
12800 </voice> 12800 </voice>
12801</phrase> 12801</phrase>
12802<phrase>
12803 id: LANG_SAVE_CHANGES
12804 desc: When you try to exit screens to confirm save
12805 user: core
12806 <source>
12807 *: "Save Changes?"
12808 </source>
12809 <dest>
12810 *: "Save Changes?"
12811 </dest>
12812 <voice>
12813 *: "Save Changes?"
12814 </voice>
12815</phrase>
diff --git a/apps/lang/espanol.lang b/apps/lang/espanol.lang
index 15046f1d1b..24e9d0e65a 100644
--- a/apps/lang/espanol.lang
+++ b/apps/lang/espanol.lang
@@ -5676,19 +5676,19 @@
5676</phrase> 5676</phrase>
5677<phrase> 5677<phrase>
5678 id: LANG_FM_SAVE_CHANGES 5678 id: LANG_FM_SAVE_CHANGES
5679 desc: When you try to exit radio to confirm save 5679 desc: deprecated
5680 user: core 5680 user: core
5681 <source> 5681 <source>
5682 *: none 5682 *: none
5683 radio: "Save Changes?" 5683 radio: ""
5684 </source> 5684 </source>
5685 <dest> 5685 <dest>
5686 *: none 5686 *: none
5687 radio: "¿Guardar cambios?" 5687 radio: ""
5688 </dest> 5688 </dest>
5689 <voice> 5689 <voice>
5690 *: none 5690 *: none
5691 radio: "¿Guardar cambios?" 5691 radio: ""
5692 </voice> 5692 </voice>
5693</phrase> 5693</phrase>
5694<phrase> 5694<phrase>
diff --git a/apps/lang/esperanto.lang b/apps/lang/esperanto.lang
index fac043e4b4..e0c9693db4 100644
--- a/apps/lang/esperanto.lang
+++ b/apps/lang/esperanto.lang
@@ -7249,13 +7249,13 @@
7249</phrase> 7249</phrase>
7250<phrase> 7250<phrase>
7251 id: LANG_FM_SAVE_CHANGES 7251 id: LANG_FM_SAVE_CHANGES
7252 desc: When you try to exit radio to confirm save 7252 desc: deprecated
7253 user: core 7253 user: core
7254 <source> 7254 <source>
7255 *: "Save Changes?" 7255 *: ""
7256 </source> 7256 </source>
7257 <dest> 7257 <dest>
7258 *: "Savi Ŝanĝojn?" 7258 *: ""
7259 </dest> 7259 </dest>
7260 <voice> 7260 <voice>
7261 *: "" 7261 *: ""
diff --git a/apps/lang/finnish.lang b/apps/lang/finnish.lang
index a746df1d46..468b0ee35f 100644
--- a/apps/lang/finnish.lang
+++ b/apps/lang/finnish.lang
@@ -7529,19 +7529,19 @@
7529</phrase> 7529</phrase>
7530<phrase> 7530<phrase>
7531 id: LANG_FM_SAVE_CHANGES 7531 id: LANG_FM_SAVE_CHANGES
7532 desc: When you try to exit radio to confirm save 7532 desc: deprecated
7533 user: core 7533 user: core
7534 <source> 7534 <source>
7535 *: none 7535 *: none
7536 radio: "Save Changes?" 7536 radio: ""
7537 </source> 7537 </source>
7538 <dest> 7538 <dest>
7539 *: none 7539 *: none
7540 radio: "Tallennetaanko muutokset?" 7540 radio: ""
7541 </dest> 7541 </dest>
7542 <voice> 7542 <voice>
7543 *: none 7543 *: none
7544 radio: "Tallennetaanko muutokset?" 7544 radio: ""
7545 </voice> 7545 </voice>
7546</phrase> 7546</phrase>
7547<phrase> 7547<phrase>
diff --git a/apps/lang/francais.lang b/apps/lang/francais.lang
index 842ffe4c1b..e58b19c161 100644
--- a/apps/lang/francais.lang
+++ b/apps/lang/francais.lang
@@ -5409,19 +5409,19 @@
5409</phrase> 5409</phrase>
5410<phrase> 5410<phrase>
5411 id: LANG_FM_SAVE_CHANGES 5411 id: LANG_FM_SAVE_CHANGES
5412 desc: When you try to exit radio to confirm save 5412 desc: deprecated
5413 user: core 5413 user: core
5414 <source> 5414 <source>
5415 *: none 5415 *: none
5416 radio: "Save Changes?" 5416 radio: ""
5417 </source> 5417 </source>
5418 <dest> 5418 <dest>
5419 *: none 5419 *: none
5420 radio: "Sauvegarder les changements ?" 5420 radio: ""
5421 </dest> 5421 </dest>
5422 <voice> 5422 <voice>
5423 *: none 5423 *: none
5424 radio: "Sauvegarder les changements ?" 5424 radio: ""
5425 </voice> 5425 </voice>
5426</phrase> 5426</phrase>
5427<phrase> 5427<phrase>
diff --git a/apps/lang/galego.lang b/apps/lang/galego.lang
index 162c8f8da4..e0f8b3d5c7 100644
--- a/apps/lang/galego.lang
+++ b/apps/lang/galego.lang
@@ -5843,19 +5843,19 @@ iriverifp7xx: "%d%% %dh %dm"
5843</phrase> 5843</phrase>
5844<phrase> 5844<phrase>
5845 id: LANG_FM_SAVE_CHANGES 5845 id: LANG_FM_SAVE_CHANGES
5846 desc: When you try to exit radio to confirm save 5846 desc: deprecated
5847 user: core 5847 user: core
5848 <source> 5848 <source>
5849 *: none 5849 *: none
5850 radio: "Save Changes?" 5850 radio: ""
5851 </source> 5851 </source>
5852 <dest> 5852 <dest>
5853 *: none 5853 *: none
5854 radio: "Gardar cambios?" 5854 radio: ""
5855 </dest> 5855 </dest>
5856 <voice> 5856 <voice>
5857 *: none 5857 *: none
5858 radio: "Gardar cambios?" 5858 radio: ""
5859 </voice> 5859 </voice>
5860</phrase> 5860</phrase>
5861<phrase> 5861<phrase>
diff --git a/apps/lang/greek.lang b/apps/lang/greek.lang
index 8814dee895..281b72ac20 100644
--- a/apps/lang/greek.lang
+++ b/apps/lang/greek.lang
@@ -5352,19 +5352,19 @@
5352</phrase> 5352</phrase>
5353<phrase> 5353<phrase>
5354 id: LANG_FM_SAVE_CHANGES 5354 id: LANG_FM_SAVE_CHANGES
5355 desc: When you try to exit radio to confirm save 5355 desc: deprecated
5356 user: core 5356 user: core
5357 <source> 5357 <source>
5358 *: none 5358 *: none
5359 radio: "Save Changes?" 5359 radio: ""
5360 </source> 5360 </source>
5361 <dest> 5361 <dest>
5362 *: none 5362 *: none
5363 radio: "Αποθήκευση αλλαγών;" 5363 radio: ""
5364 </dest> 5364 </dest>
5365 <voice> 5365 <voice>
5366 *: none 5366 *: none
5367 radio: "Αποθήκευση αλλαγών;" 5367 radio: ""
5368 </voice> 5368 </voice>
5369</phrase> 5369</phrase>
5370<phrase> 5370<phrase>
diff --git a/apps/lang/hebrew.lang b/apps/lang/hebrew.lang
index b753ce7952..c24a696aba 100644
--- a/apps/lang/hebrew.lang
+++ b/apps/lang/hebrew.lang
@@ -5390,19 +5390,19 @@
5390</phrase> 5390</phrase>
5391<phrase> 5391<phrase>
5392 id: LANG_FM_SAVE_CHANGES 5392 id: LANG_FM_SAVE_CHANGES
5393 desc: When you try to exit radio to confirm save 5393 desc: deprecated
5394 user: core 5394 user: core
5395 <source> 5395 <source>
5396 *: none 5396 *: none
5397 radio: "Save Changes?" 5397 radio: ""
5398 </source> 5398 </source>
5399 <dest> 5399 <dest>
5400 *: none 5400 *: none
5401 radio: "?לשמור שינויים" 5401 radio: ""
5402 </dest> 5402 </dest>
5403 <voice> 5403 <voice>
5404 *: none 5404 *: none
5405 radio: "לשמור שינויים?" 5405 radio: ""
5406 </voice> 5406 </voice>
5407</phrase> 5407</phrase>
5408<phrase> 5408<phrase>
diff --git a/apps/lang/hindi.lang b/apps/lang/hindi.lang
index 6f0cece523..bfff1be1e1 100644
--- a/apps/lang/hindi.lang
+++ b/apps/lang/hindi.lang
@@ -2542,19 +2542,19 @@
2542</phrase> 2542</phrase>
2543<phrase> 2543<phrase>
2544 id: LANG_FM_SAVE_CHANGES 2544 id: LANG_FM_SAVE_CHANGES
2545 desc: When you try to exit radio to confirm save 2545 desc: deprecated
2546 user: core 2546 user: core
2547 <source> 2547 <source>
2548 *: none 2548 *: none
2549 radio: "Save Changes?" 2549 radio: ""
2550 </source> 2550 </source>
2551 <dest> 2551 <dest>
2552 *: none 2552 *: none
2553 radio: "Changes बचा?" 2553 radio: ""
2554 </dest> 2554 </dest>
2555 <voice> 2555 <voice>
2556 *: none 2556 *: none
2557 radio: "Changes बचा?" 2557 radio: ""
2558 </voice> 2558 </voice>
2559</phrase> 2559</phrase>
2560<phrase> 2560<phrase>
diff --git a/apps/lang/hrvatski.lang b/apps/lang/hrvatski.lang
index 1f31ff408f..7aa88ba327 100644
--- a/apps/lang/hrvatski.lang
+++ b/apps/lang/hrvatski.lang
@@ -5382,19 +5382,19 @@
5382</phrase> 5382</phrase>
5383<phrase> 5383<phrase>
5384 id: LANG_FM_SAVE_CHANGES 5384 id: LANG_FM_SAVE_CHANGES
5385 desc: When you try to exit radio to confirm save 5385 desc: deprecated
5386 user: core 5386 user: core
5387 <source> 5387 <source>
5388 *: none 5388 *: none
5389 radio: "Save Changes?" 5389 radio: ""
5390 </source> 5390 </source>
5391 <dest> 5391 <dest>
5392 *: none 5392 *: none
5393 radio: "Spremiti promjene?" 5393 radio: ""
5394 </dest> 5394 </dest>
5395 <voice> 5395 <voice>
5396 *: none 5396 *: none
5397 radio: "Spremiti promjene?" 5397 radio: ""
5398 </voice> 5398 </voice>
5399</phrase> 5399</phrase>
5400<phrase> 5400<phrase>
diff --git a/apps/lang/islenska.lang b/apps/lang/islenska.lang
index df9c9463bc..863560ee8e 100644
--- a/apps/lang/islenska.lang
+++ b/apps/lang/islenska.lang
@@ -6194,19 +6194,19 @@
6194</phrase> 6194</phrase>
6195<phrase> 6195<phrase>
6196 id: LANG_FM_SAVE_CHANGES 6196 id: LANG_FM_SAVE_CHANGES
6197 desc: When you try to exit radio to confirm save 6197 desc: deprecated
6198 user: core 6198 user: core
6199 <source> 6199 <source>
6200 *: none 6200 *: none
6201 radio: "Save Changes?" 6201 radio: ""
6202 </source> 6202 </source>
6203 <dest> 6203 <dest>
6204 *: none 6204 *: none
6205 radio: "Vista breytingar?" 6205 radio: ""
6206 </dest> 6206 </dest>
6207 <voice> 6207 <voice>
6208 *: none 6208 *: none
6209 radio: "Save Changes?" 6209 radio: ""
6210 </voice> 6210 </voice>
6211</phrase> 6211</phrase>
6212<phrase> 6212<phrase>
diff --git a/apps/lang/italiano.lang b/apps/lang/italiano.lang
index 6f2b5dfb8b..eb3c6ae37d 100644
--- a/apps/lang/italiano.lang
+++ b/apps/lang/italiano.lang
@@ -5384,19 +5384,19 @@
5384</phrase> 5384</phrase>
5385<phrase> 5385<phrase>
5386 id: LANG_FM_SAVE_CHANGES 5386 id: LANG_FM_SAVE_CHANGES
5387 desc: When you try to exit radio to confirm save 5387 desc: deprecated
5388 user: core 5388 user: core
5389 <source> 5389 <source>
5390 *: none 5390 *: none
5391 radio: "Save Changes?" 5391 radio: ""
5392 </source> 5392 </source>
5393 <dest> 5393 <dest>
5394 *: none 5394 *: none
5395 radio: "Salvare le modifiche?" 5395 radio: ""
5396 </dest> 5396 </dest>
5397 <voice> 5397 <voice>
5398 *: none 5398 *: none
5399 radio: "Salvare le modifiche?" 5399 radio: ""
5400 </voice> 5400 </voice>
5401</phrase> 5401</phrase>
5402<phrase> 5402<phrase>
diff --git a/apps/lang/japanese.lang b/apps/lang/japanese.lang
index 50b249750e..4599020eeb 100644
--- a/apps/lang/japanese.lang
+++ b/apps/lang/japanese.lang
@@ -5388,19 +5388,19 @@
5388</phrase> 5388</phrase>
5389<phrase> 5389<phrase>
5390 id: LANG_FM_SAVE_CHANGES 5390 id: LANG_FM_SAVE_CHANGES
5391 desc: When you try to exit radio to confirm save 5391 desc: deprecated
5392 user: core 5392 user: core
5393 <source> 5393 <source>
5394 *: none 5394 *: none
5395 radio: "Save Changes?" 5395 radio: ""
5396 </source> 5396 </source>
5397 <dest> 5397 <dest>
5398 *: none 5398 *: none
5399 radio: "プリセットを保存しますか?" 5399 radio: ""
5400 </dest> 5400 </dest>
5401 <voice> 5401 <voice>
5402 *: none 5402 *: none
5403 radio: "プリセットを保存しますか?" 5403 radio: ""
5404 </voice> 5404 </voice>
5405</phrase> 5405</phrase>
5406<phrase> 5406<phrase>
diff --git a/apps/lang/korean.lang b/apps/lang/korean.lang
index 5ad965e27a..1c12991fe4 100644
--- a/apps/lang/korean.lang
+++ b/apps/lang/korean.lang
@@ -7528,19 +7528,19 @@
7528</phrase> 7528</phrase>
7529<phrase> 7529<phrase>
7530 id: LANG_FM_SAVE_CHANGES 7530 id: LANG_FM_SAVE_CHANGES
7531 desc: When you try to exit radio to confirm save 7531 desc: deprecated
7532 user: core 7532 user: core
7533 <source> 7533 <source>
7534 *: none 7534 *: none
7535 radio: "Save Changes?" 7535 radio: ""
7536 </source> 7536 </source>
7537 <dest> 7537 <dest>
7538 *: none 7538 *: none
7539 radio: "변경사항을 저장할까요?" 7539 radio: ""
7540 </dest> 7540 </dest>
7541 <voice> 7541 <voice>
7542 *: none 7542 *: none
7543 radio: "변경사항을 저장할까요?" 7543 radio: ""
7544 </voice> 7544 </voice>
7545</phrase> 7545</phrase>
7546<phrase> 7546<phrase>
diff --git a/apps/lang/latviesu.lang b/apps/lang/latviesu.lang
index 4c8dfa659e..2f6c8058a8 100644
--- a/apps/lang/latviesu.lang
+++ b/apps/lang/latviesu.lang
@@ -5382,19 +5382,19 @@
5382</phrase> 5382</phrase>
5383<phrase> 5383<phrase>
5384 id: LANG_FM_SAVE_CHANGES 5384 id: LANG_FM_SAVE_CHANGES
5385 desc: When you try to exit radio to confirm save 5385 desc: deprecated
5386 user: core 5386 user: core
5387 <source> 5387 <source>
5388 *: none 5388 *: none
5389 radio: "Save Changes?" 5389 radio: ""
5390 </source> 5390 </source>
5391 <dest> 5391 <dest>
5392 *: none 5392 *: none
5393 radio: "Saglabāt Izmaiņas?" 5393 radio: ""
5394 </dest> 5394 </dest>
5395 <voice> 5395 <voice>
5396 *: none 5396 *: none
5397 radio: "Saglabāt Izmaiņas?" 5397 radio: ""
5398 </voice> 5398 </voice>
5399</phrase> 5399</phrase>
5400<phrase> 5400<phrase>
diff --git a/apps/lang/lietuviu.lang b/apps/lang/lietuviu.lang
index 5af107aa70..2c0ad7f3e7 100644
--- a/apps/lang/lietuviu.lang
+++ b/apps/lang/lietuviu.lang
@@ -5440,19 +5440,19 @@
5440</phrase> 5440</phrase>
5441<phrase> 5441<phrase>
5442 id: LANG_FM_SAVE_CHANGES 5442 id: LANG_FM_SAVE_CHANGES
5443 desc: When you try to exit radio to confirm save 5443 desc: deprecated
5444 user: core 5444 user: core
5445 <source> 5445 <source>
5446 *: none 5446 *: none
5447 radio: "Save Changes?" 5447 radio: ""
5448 </source> 5448 </source>
5449 <dest> 5449 <dest>
5450 *: none 5450 *: none
5451 radio: "Išsaugoti pakeitimus?" 5451 radio: ""
5452 </dest> 5452 </dest>
5453 <voice> 5453 <voice>
5454 *: none 5454 *: none
5455 radio: "Išsaugoti pakeitimus?" 5455 radio: ""
5456 </voice> 5456 </voice>
5457</phrase> 5457</phrase>
5458<phrase> 5458<phrase>
diff --git a/apps/lang/magyar.lang b/apps/lang/magyar.lang
index bdd7b4e0bb..b17f0e8790 100644
--- a/apps/lang/magyar.lang
+++ b/apps/lang/magyar.lang
@@ -5358,19 +5358,19 @@
5358</phrase> 5358</phrase>
5359<phrase> 5359<phrase>
5360 id: LANG_FM_SAVE_CHANGES 5360 id: LANG_FM_SAVE_CHANGES
5361 desc: When you try to exit radio to confirm save 5361 desc: deprecated
5362 user: core 5362 user: core
5363 <source> 5363 <source>
5364 *: none 5364 *: none
5365 radio: "Save Changes?" 5365 radio: ""
5366 </source> 5366 </source>
5367 <dest> 5367 <dest>
5368 *: none 5368 *: none
5369 radio: "Mentsem a változtatásokat?" 5369 radio: ""
5370 </dest> 5370 </dest>
5371 <voice> 5371 <voice>
5372 *: none 5372 *: none
5373 radio: "Save Changes?" 5373 radio: ""
5374 </voice> 5374 </voice>
5375</phrase> 5375</phrase>
5376<phrase> 5376<phrase>
diff --git a/apps/lang/nederlands.lang b/apps/lang/nederlands.lang
index 28bef6890e..b9d35b2479 100644
--- a/apps/lang/nederlands.lang
+++ b/apps/lang/nederlands.lang
@@ -7525,19 +7525,19 @@
7525</phrase> 7525</phrase>
7526<phrase> 7526<phrase>
7527 id: LANG_FM_SAVE_CHANGES 7527 id: LANG_FM_SAVE_CHANGES
7528 desc: When you try to exit radio to confirm save 7528 desc: deprecated
7529 user: core 7529 user: core
7530 <source> 7530 <source>
7531 *: none 7531 *: none
7532 radio: "Save Changes?" 7532 radio: ""
7533 </source> 7533 </source>
7534 <dest> 7534 <dest>
7535 *: none 7535 *: none
7536 radio: "Verandering opslaan?" 7536 radio: ""
7537 </dest> 7537 </dest>
7538 <voice> 7538 <voice>
7539 *: none 7539 *: none
7540 radio: "Verandering opslaan?" 7540 radio: ""
7541 </voice> 7541 </voice>
7542</phrase> 7542</phrase>
7543<phrase> 7543<phrase>
diff --git a/apps/lang/norsk-nynorsk.lang b/apps/lang/norsk-nynorsk.lang
index 835a6bd78d..6971cdd469 100644
--- a/apps/lang/norsk-nynorsk.lang
+++ b/apps/lang/norsk-nynorsk.lang
@@ -7418,19 +7418,19 @@
7418</phrase> 7418</phrase>
7419<phrase> 7419<phrase>
7420 id: LANG_FM_SAVE_CHANGES 7420 id: LANG_FM_SAVE_CHANGES
7421 desc: When you try to exit radio to confirm save 7421 desc: deprecated
7422 user: core 7422 user: core
7423 <source> 7423 <source>
7424 *: none 7424 *: none
7425 radio: "Save Changes?" 7425 radio: ""
7426 </source> 7426 </source>
7427 <dest> 7427 <dest>
7428 *: none 7428 *: none
7429 radio: "Vil du lagra endringane?" 7429 radio: ""
7430 </dest> 7430 </dest>
7431 <voice> 7431 <voice>
7432 *: none 7432 *: none
7433 radio: "Vil du lagra endringane?" 7433 radio: ""
7434 </voice> 7434 </voice>
7435</phrase> 7435</phrase>
7436<phrase> 7436<phrase>
diff --git a/apps/lang/norsk.lang b/apps/lang/norsk.lang
index 6c7a37156f..a7d1935887 100644
--- a/apps/lang/norsk.lang
+++ b/apps/lang/norsk.lang
@@ -6597,19 +6597,19 @@
6597</phrase> 6597</phrase>
6598<phrase> 6598<phrase>
6599 id: LANG_FM_SAVE_CHANGES 6599 id: LANG_FM_SAVE_CHANGES
6600 desc: When you try to exit radio to confirm save 6600 desc: deprecated
6601 user: core 6601 user: core
6602 <source> 6602 <source>
6603 *: none 6603 *: none
6604 radio: "Save Changes?" 6604 radio: ""
6605 </source> 6605 </source>
6606 <dest> 6606 <dest>
6607 *: none 6607 *: none
6608 radio: "Lagre endringer?" 6608 radio: ""
6609 </dest> 6609 </dest>
6610 <voice> 6610 <voice>
6611 *: none 6611 *: none
6612 radio: "Lagre endringer?" 6612 radio: ""
6613 </voice> 6613 </voice>
6614</phrase> 6614</phrase>
6615<phrase> 6615<phrase>
diff --git a/apps/lang/polski.lang b/apps/lang/polski.lang
index bd5d8d412c..7ca2c621d9 100644
--- a/apps/lang/polski.lang
+++ b/apps/lang/polski.lang
@@ -5392,19 +5392,19 @@
5392</phrase> 5392</phrase>
5393<phrase> 5393<phrase>
5394 id: LANG_FM_SAVE_CHANGES 5394 id: LANG_FM_SAVE_CHANGES
5395 desc: When you try to exit radio to confirm save 5395 desc: deprecated
5396 user: core 5396 user: core
5397 <source> 5397 <source>
5398 *: none 5398 *: none
5399 radio: "Save Changes?" 5399 radio: ""
5400 </source> 5400 </source>
5401 <dest> 5401 <dest>
5402 *: none 5402 *: none
5403 radio: "Zapisać zmiany?" 5403 radio: ""
5404 </dest> 5404 </dest>
5405 <voice> 5405 <voice>
5406 *: none 5406 *: none
5407 radio: "Zapisać zmiany?" 5407 radio: ""
5408 </voice> 5408 </voice>
5409</phrase> 5409</phrase>
5410<phrase> 5410<phrase>
diff --git a/apps/lang/portugues-brasileiro.lang b/apps/lang/portugues-brasileiro.lang
index d397530034..6663f1d8c6 100644
--- a/apps/lang/portugues-brasileiro.lang
+++ b/apps/lang/portugues-brasileiro.lang
@@ -5382,19 +5382,19 @@
5382</phrase> 5382</phrase>
5383<phrase> 5383<phrase>
5384 id: LANG_FM_SAVE_CHANGES 5384 id: LANG_FM_SAVE_CHANGES
5385 desc: When you try to exit radio to confirm save 5385 desc: deprecated
5386 user: core 5386 user: core
5387 <source> 5387 <source>
5388 *: none 5388 *: none
5389 radio: "Save Changes?" 5389 radio: ""
5390 </source> 5390 </source>
5391 <dest> 5391 <dest>
5392 *: none 5392 *: none
5393 radio: "Gravar Mudanças?" 5393 radio: ""
5394 </dest> 5394 </dest>
5395 <voice> 5395 <voice>
5396 *: none 5396 *: none
5397 radio: "Gravar Mudanças?" 5397 radio: ""
5398 </voice> 5398 </voice>
5399</phrase> 5399</phrase>
5400<phrase> 5400<phrase>
diff --git a/apps/lang/portugues.lang b/apps/lang/portugues.lang
index 9fa86499a5..e0ba71cb42 100644
--- a/apps/lang/portugues.lang
+++ b/apps/lang/portugues.lang
@@ -9515,19 +9515,19 @@
9515</phrase> 9515</phrase>
9516<phrase> 9516<phrase>
9517 id: LANG_FM_SAVE_CHANGES 9517 id: LANG_FM_SAVE_CHANGES
9518 desc: When you try to exit radio to confirm save 9518 desc: deprecated
9519 user: core 9519 user: core
9520 <source> 9520 <source>
9521 *: none 9521 *: none
9522 radio: "Save Changes?" 9522 radio: ""
9523 </source> 9523 </source>
9524 <dest> 9524 <dest>
9525 *: none 9525 *: none
9526 radio: "Guardar Alterações?" 9526 radio: ""
9527 </dest> 9527 </dest>
9528 <voice> 9528 <voice>
9529 *: none 9529 *: none
9530 radio: "Guardar Alterações?" 9530 radio: ""
9531 </voice> 9531 </voice>
9532</phrase> 9532</phrase>
9533<phrase> 9533<phrase>
diff --git a/apps/lang/romaneste.lang b/apps/lang/romaneste.lang
index dbd6f7960c..6f232478a4 100644
--- a/apps/lang/romaneste.lang
+++ b/apps/lang/romaneste.lang
@@ -2327,19 +2327,19 @@
2327</phrase> 2327</phrase>
2328<phrase> 2328<phrase>
2329 id: LANG_FM_SAVE_CHANGES 2329 id: LANG_FM_SAVE_CHANGES
2330 desc: When you try to exit radio to confirm save 2330 desc: deprecated
2331 user: core 2331 user: core
2332 <source> 2332 <source>
2333 *: none 2333 *: none
2334 radio: "Save Changes?" 2334 radio: ""
2335 </source> 2335 </source>
2336 <dest> 2336 <dest>
2337 *: none 2337 *: none
2338 radio: "Salvați modificările?" 2338 radio: ""
2339 </dest> 2339 </dest>
2340 <voice> 2340 <voice>
2341 *: none 2341 *: none
2342 radio: "Salvați modificările?" 2342 radio: ""
2343 </voice> 2343 </voice>
2344</phrase> 2344</phrase>
2345<phrase> 2345<phrase>
diff --git a/apps/lang/russian.lang b/apps/lang/russian.lang
index db66ee842d..785a273837 100644
--- a/apps/lang/russian.lang
+++ b/apps/lang/russian.lang
@@ -7284,19 +7284,19 @@
7284</phrase> 7284</phrase>
7285<phrase> 7285<phrase>
7286 id: LANG_FM_SAVE_CHANGES 7286 id: LANG_FM_SAVE_CHANGES
7287 desc: When you try to exit radio to confirm save 7287 desc: deprecated
7288 user: core 7288 user: core
7289 <source> 7289 <source>
7290 *: none 7290 *: none
7291 radio: "Save Changes?" 7291 radio: ""
7292 </source> 7292 </source>
7293 <dest> 7293 <dest>
7294 *: none 7294 *: none
7295 radio: "Сохранить изменения?" 7295 radio: ""
7296 </dest> 7296 </dest>
7297 <voice> 7297 <voice>
7298 *: none 7298 *: none
7299 radio: "Сохранить изменения?" 7299 radio: ""
7300 </voice> 7300 </voice>
7301</phrase> 7301</phrase>
7302<phrase> 7302<phrase>
diff --git a/apps/lang/slovak.lang b/apps/lang/slovak.lang
index 4529efedfe..41c888ea7d 100644
--- a/apps/lang/slovak.lang
+++ b/apps/lang/slovak.lang
@@ -5382,19 +5382,19 @@
5382</phrase> 5382</phrase>
5383<phrase> 5383<phrase>
5384 id: LANG_FM_SAVE_CHANGES 5384 id: LANG_FM_SAVE_CHANGES
5385 desc: When you try to exit radio to confirm save 5385 desc: deprecated
5386 user: core 5386 user: core
5387 <source> 5387 <source>
5388 *: none 5388 *: none
5389 radio: "Save Changes?" 5389 radio: ""
5390 </source> 5390 </source>
5391 <dest> 5391 <dest>
5392 *: none 5392 *: none
5393 radio: "Uložiť Zmeny?" 5393 radio: ""
5394 </dest> 5394 </dest>
5395 <voice> 5395 <voice>
5396 *: none 5396 *: none
5397 radio: "Uložiť Zmeny?" 5397 radio: ""
5398 </voice> 5398 </voice>
5399</phrase> 5399</phrase>
5400<phrase> 5400<phrase>
diff --git a/apps/lang/slovenscina.lang b/apps/lang/slovenscina.lang
index de8e509b94..f117c1db98 100644
--- a/apps/lang/slovenscina.lang
+++ b/apps/lang/slovenscina.lang
@@ -2661,19 +2661,19 @@
2661</phrase> 2661</phrase>
2662<phrase> 2662<phrase>
2663 id: LANG_FM_SAVE_CHANGES 2663 id: LANG_FM_SAVE_CHANGES
2664 desc: When you try to exit radio to confirm save 2664 desc: deprecated
2665 user: core 2665 user: core
2666 <source> 2666 <source>
2667 *: none 2667 *: none
2668 radio: "Save Changes?" 2668 radio: ""
2669 </source> 2669 </source>
2670 <dest> 2670 <dest>
2671 *: none 2671 *: none
2672 radio: "Save Changes?" 2672 radio: ""
2673 </dest> 2673 </dest>
2674 <voice> 2674 <voice>
2675 *: none 2675 *: none
2676 radio: "Save Changes?" 2676 radio: ""
2677 </voice> 2677 </voice>
2678</phrase> 2678</phrase>
2679<phrase> 2679<phrase>
diff --git a/apps/lang/srpski.lang b/apps/lang/srpski.lang
index fa2180f6f5..c528866212 100644
--- a/apps/lang/srpski.lang
+++ b/apps/lang/srpski.lang
@@ -5364,19 +5364,19 @@
5364</phrase> 5364</phrase>
5365<phrase> 5365<phrase>
5366 id: LANG_FM_SAVE_CHANGES 5366 id: LANG_FM_SAVE_CHANGES
5367 desc: When you try to exit radio to confirm save 5367 desc: deprecated
5368 user: core 5368 user: core
5369 <source> 5369 <source>
5370 *: none 5370 *: none
5371 radio: "Save Changes?" 5371 radio: ""
5372 </source> 5372 </source>
5373 <dest> 5373 <dest>
5374 *: none 5374 *: none
5375 radio: "Да снимим промене?" 5375 radio: ""
5376 </dest> 5376 </dest>
5377 <voice> 5377 <voice>
5378 *: none 5378 *: none
5379 radio: "Да снимим промене?" 5379 radio: ""
5380 </voice> 5380 </voice>
5381</phrase> 5381</phrase>
5382<phrase> 5382<phrase>
diff --git a/apps/lang/svenska.lang b/apps/lang/svenska.lang
index 41499ee6fa..8dea586c44 100644
--- a/apps/lang/svenska.lang
+++ b/apps/lang/svenska.lang
@@ -5385,19 +5385,19 @@
5385</phrase> 5385</phrase>
5386<phrase> 5386<phrase>
5387 id: LANG_FM_SAVE_CHANGES 5387 id: LANG_FM_SAVE_CHANGES
5388 desc: When you try to exit radio to confirm save 5388 desc: deprecated
5389 user: core 5389 user: core
5390 <source> 5390 <source>
5391 *: none 5391 *: none
5392 radio: "Save Changes?" 5392 radio: ""
5393 </source> 5393 </source>
5394 <dest> 5394 <dest>
5395 *: none 5395 *: none
5396 radio: "Spara ändringar?" 5396 radio: ""
5397 </dest> 5397 </dest>
5398 <voice> 5398 <voice>
5399 *: none 5399 *: none
5400 radio: "Spara ändringar?" 5400 radio: ""
5401 </voice> 5401 </voice>
5402</phrase> 5402</phrase>
5403<phrase> 5403<phrase>
diff --git a/apps/lang/tagalog.lang b/apps/lang/tagalog.lang
index d7c329cf57..3d46afd4a1 100644
--- a/apps/lang/tagalog.lang
+++ b/apps/lang/tagalog.lang
@@ -5366,19 +5366,19 @@
5366</phrase> 5366</phrase>
5367<phrase> 5367<phrase>
5368 id: LANG_FM_SAVE_CHANGES 5368 id: LANG_FM_SAVE_CHANGES
5369 desc: When you try to exit radio to confirm save 5369 desc: deprecated
5370 user: core 5370 user: core
5371 <source> 5371 <source>
5372 *: none 5372 *: none
5373 radio: "Save Changes?" 5373 radio: ""
5374 </source> 5374 </source>
5375 <dest> 5375 <dest>
5376 *: none 5376 *: none
5377 radio: "Mag-ipon palitan?" 5377 radio: ""
5378 </dest> 5378 </dest>
5379 <voice> 5379 <voice>
5380 *: none 5380 *: none
5381 radio: "Save Changes?" 5381 radio: ""
5382 </voice> 5382 </voice>
5383</phrase> 5383</phrase>
5384<phrase> 5384<phrase>
diff --git a/apps/lang/thai.lang b/apps/lang/thai.lang
index 701886734e..c64fcc596b 100644
--- a/apps/lang/thai.lang
+++ b/apps/lang/thai.lang
@@ -5346,19 +5346,19 @@
5346</phrase> 5346</phrase>
5347<phrase> 5347<phrase>
5348 id: LANG_FM_SAVE_CHANGES 5348 id: LANG_FM_SAVE_CHANGES
5349 desc: When you try to exit radio to confirm save 5349 desc: deprecated
5350 user: core 5350 user: core
5351 <source> 5351 <source>
5352 *: none 5352 *: none
5353 radio: "Save Changes?" 5353 radio: ""
5354 </source> 5354 </source>
5355 <dest> 5355 <dest>
5356 *: none 5356 *: none
5357 radio: "บันทึกการเปลี่ยนแปลง?" 5357 radio: ""
5358 </dest> 5358 </dest>
5359 <voice> 5359 <voice>
5360 *: none 5360 *: none
5361 radio: "Save Changes?" 5361 radio: ""
5362 </voice> 5362 </voice>
5363</phrase> 5363</phrase>
5364<phrase> 5364<phrase>
diff --git a/apps/lang/ukrainian.lang b/apps/lang/ukrainian.lang
index 9a9e7781d1..81d98d0cc1 100644
--- a/apps/lang/ukrainian.lang
+++ b/apps/lang/ukrainian.lang
@@ -5375,19 +5375,19 @@
5375</phrase> 5375</phrase>
5376<phrase> 5376<phrase>
5377 id: LANG_FM_SAVE_CHANGES 5377 id: LANG_FM_SAVE_CHANGES
5378 desc: When you try to exit radio to confirm save 5378 desc: deprecated
5379 user: core 5379 user: core
5380 <source> 5380 <source>
5381 *: none 5381 *: none
5382 radio: "Save Changes?" 5382 radio: ""
5383 </source> 5383 </source>
5384 <dest> 5384 <dest>
5385 *: none 5385 *: none
5386 radio: "Зберегти Змiни?" 5386 radio: ""
5387 </dest> 5387 </dest>
5388 <voice> 5388 <voice>
5389 *: none 5389 *: none
5390 radio: "Зберегти Змiни?" 5390 radio: ""
5391 </voice> 5391 </voice>
5392</phrase> 5392</phrase>
5393<phrase> 5393<phrase>
diff --git a/apps/lang/walon.lang b/apps/lang/walon.lang
index 45fb041378..4d67f36517 100644
--- a/apps/lang/walon.lang
+++ b/apps/lang/walon.lang
@@ -5386,19 +5386,19 @@
5386</phrase> 5386</phrase>
5387<phrase> 5387<phrase>
5388 id: LANG_FM_SAVE_CHANGES 5388 id: LANG_FM_SAVE_CHANGES
5389 desc: When you try to exit radio to confirm save 5389 desc: deprecated
5390 user: core 5390 user: core
5391 <source> 5391 <source>
5392 *: none 5392 *: none
5393 radio: "Save Changes?" 5393 radio: ""
5394 </source> 5394 </source>
5395 <dest> 5395 <dest>
5396 *: none 5396 *: none
5397 radio: "Schaper les candjmints ?" 5397 radio: ""
5398 </dest> 5398 </dest>
5399 <voice> 5399 <voice>
5400 *: none 5400 *: none
5401 radio: "Schaper les candjmints ?" 5401 radio: ""
5402 </voice> 5402 </voice>
5403</phrase> 5403</phrase>
5404<phrase> 5404<phrase>
diff --git a/apps/playlist.c b/apps/playlist.c
index ae6ea900d2..367e935006 100644
--- a/apps/playlist.c
+++ b/apps/playlist.c
@@ -103,6 +103,7 @@
103#include "splash.h" 103#include "splash.h"
104#include "rbunicode.h" 104#include "rbunicode.h"
105#include "root_menu.h" 105#include "root_menu.h"
106#include "plugin.h" /* To borrow a temp buffer to rewrite a .m3u8 file */
106 107
107#define PLAYLIST_CONTROL_FILE_VERSION 2 108#define PLAYLIST_CONTROL_FILE_VERSION 2
108 109
@@ -3369,6 +3370,8 @@ int playlist_save(struct playlist_info* playlist, char *filename)
3369 int result = 0; 3370 int result = 0;
3370 bool overwrite_current = false; 3371 bool overwrite_current = false;
3371 int* index_buf = NULL; 3372 int* index_buf = NULL;
3373 char* old_buffer = NULL;
3374 size_t old_buffer_size = 0;
3372 3375
3373 if (!playlist) 3376 if (!playlist)
3374 playlist = &current_playlist; 3377 playlist = &current_playlist;
@@ -3388,8 +3391,17 @@ int playlist_save(struct playlist_info* playlist, char *filename)
3388 if (playlist->buffer_size < (int)(playlist->amount * sizeof(int))) 3391 if (playlist->buffer_size < (int)(playlist->amount * sizeof(int)))
3389 { 3392 {
3390 /* not enough buffer space to store updated indices */ 3393 /* not enough buffer space to store updated indices */
3391 splash(HZ*2, ID2P(LANG_PLAYLIST_ACCESS_ERROR)); 3394 /* Try to get a buffer */
3392 return -1; 3395 old_buffer = playlist->buffer;
3396 old_buffer_size = playlist->buffer_size;
3397 playlist->buffer = plugin_get_buffer((size_t*)&playlist->buffer_size);
3398 if (playlist->buffer_size < (int)(playlist->amount * sizeof(int)))
3399 {
3400 playlist->buffer = old_buffer;
3401 playlist->buffer_size = old_buffer_size;
3402 splash(HZ*2, ID2P(LANG_PLAYLIST_ACCESS_ERROR));
3403 return -1;
3404 }
3393 } 3405 }
3394 3406
3395 /* in_ram buffer is unused for m3u files so we'll use for storing 3407 /* in_ram buffer is unused for m3u files so we'll use for storing
@@ -3413,6 +3425,11 @@ int playlist_save(struct playlist_info* playlist, char *filename)
3413 if (fd < 0) 3425 if (fd < 0)
3414 { 3426 {
3415 splash(HZ*2, ID2P(LANG_PLAYLIST_ACCESS_ERROR)); 3427 splash(HZ*2, ID2P(LANG_PLAYLIST_ACCESS_ERROR));
3428 if (old_buffer != NULL)
3429 {
3430 playlist->buffer = old_buffer;
3431 playlist->buffer_size = old_buffer_size;
3432 }
3416 return -1; 3433 return -1;
3417 } 3434 }
3418 3435
@@ -3513,6 +3530,11 @@ int playlist_save(struct playlist_info* playlist, char *filename)
3513 } 3530 }
3514 3531
3515 cpu_boost(false); 3532 cpu_boost(false);
3533 if (old_buffer != NULL)
3534 {
3535 playlist->buffer = old_buffer;
3536 playlist->buffer_size = old_buffer_size;
3537 }
3516 3538
3517 return result; 3539 return result;
3518} 3540}
diff --git a/apps/playlist_viewer.c b/apps/playlist_viewer.c
index f1ed0ac0fd..940a6d77dc 100644
--- a/apps/playlist_viewer.c
+++ b/apps/playlist_viewer.c
@@ -48,6 +48,7 @@
48#include "list.h" 48#include "list.h"
49#include "splash.h" 49#include "splash.h"
50#include "playlist_menu.h" 50#include "playlist_menu.h"
51#include "yesno.h"
51 52
52/* Maximum number of tracks we can have loaded at one time */ 53/* Maximum number of tracks we can have loaded at one time */
53#define MAX_PLAYLIST_ENTRIES 200 54#define MAX_PLAYLIST_ENTRIES 200
@@ -634,6 +635,7 @@ enum playlist_viewer_result playlist_viewer_ex(const char* filename)
634 enum playlist_viewer_result ret = PLAYLIST_VIEWER_OK; 635 enum playlist_viewer_result ret = PLAYLIST_VIEWER_OK;
635 bool exit = false; /* exit viewer */ 636 bool exit = false; /* exit viewer */
636 int button; 637 int button;
638 bool dirty = false;
637 struct gui_synclist playlist_lists; 639 struct gui_synclist playlist_lists;
638 if (!playlist_viewer_init(&viewer, filename, false)) 640 if (!playlist_viewer_init(&viewer, filename, false))
639 goto exit; 641 goto exit;
@@ -729,6 +731,7 @@ enum playlist_viewer_result playlist_viewer_ex(const char* filename)
729 update_playlist(true); 731 update_playlist(true);
730 viewer.moving_track = -1; 732 viewer.moving_track = -1;
731 viewer.moving_playlist_index = -1; 733 viewer.moving_playlist_index = -1;
734 dirty = true;
732 } 735 }
733 else if (!viewer.playlist) 736 else if (!viewer.playlist)
734 { 737 {
@@ -784,6 +787,7 @@ enum playlist_viewer_result playlist_viewer_ex(const char* filename)
784 exit = true; 787 exit = true;
785 if (viewer.selected_track >= viewer.num_tracks) 788 if (viewer.selected_track >= viewer.num_tracks)
786 viewer.selected_track = viewer.num_tracks-1; 789 viewer.selected_track = viewer.num_tracks-1;
790 dirty = true;
787 } 791 }
788 gui_synclist_draw(&playlist_lists); 792 gui_synclist_draw(&playlist_lists);
789 break; 793 break;
@@ -803,7 +807,11 @@ enum playlist_viewer_result playlist_viewer_ex(const char* filename)
803 807
804exit: 808exit:
805 if (viewer.playlist) 809 if (viewer.playlist)
810 {
811 if(dirty && yesno_pop(ID2P(LANG_SAVE_CHANGES)))
812 save_playlist_screen(viewer.playlist);
806 playlist_close(viewer.playlist); 813 playlist_close(viewer.playlist);
814 }
807 return ret; 815 return ret;
808} 816}
809 817
diff --git a/apps/radio/radio.c b/apps/radio/radio.c
index f88a63382d..d687948c94 100644
--- a/apps/radio/radio.c
+++ b/apps/radio/radio.c
@@ -489,7 +489,7 @@ void radio_screen(void)
489 done = true; 489 done = true;
490 if(presets_have_changed()) 490 if(presets_have_changed())
491 { 491 {
492 if(yesno_pop(ID2P(LANG_FM_SAVE_CHANGES))) 492 if(yesno_pop(ID2P(LANG_SAVE_CHANGES)))
493 { 493 {
494 presets_save(); 494 presets_save();
495 } 495 }
@@ -539,7 +539,7 @@ void radio_screen(void)
539 done = true; 539 done = true;
540 if(presets_have_changed()) 540 if(presets_have_changed())
541 { 541 {
542 if(yesno_pop(ID2P(LANG_FM_SAVE_CHANGES))) 542 if(yesno_pop(ID2P(LANG_SAVE_CHANGES)))
543 { 543 {
544 presets_save(); 544 presets_save();
545 } 545 }
@@ -705,7 +705,7 @@ void radio_screen(void)
705 done = true; 705 done = true;
706 if(presets_have_changed()) 706 if(presets_have_changed())
707 { 707 {
708 if(yesno_pop(ID2P(LANG_FM_SAVE_CHANGES))) 708 if(yesno_pop(ID2P(LANG_SAVE_CHANGES)))
709 { 709 {
710 radio_save_presets(); 710 radio_save_presets();
711 } 711 }