X
Tap here to go to the mobile version of the site.

Support Forum

Email link broken in Firefox 62 for Yahoo Mail - produces blank msg; does not insert subject and link

Posted

I have been using using the "Email a link to this page" feature for a long time (previously it was Share page feature I believe) and have correctly setup the mailto: in preferences to use Yahoo Mail. Recently in Firefox 62, the feature now only starts up the Compose mail function for Yahoo Mail but the message is blank. Previously it had automatically inserted the Subject with page title and body with page url.

I've tested in both Linux and Windows, with all add-ons disabled and the behavior is the same.

I have been using using the "Email a link to this page" feature for a long time (previously it was Share page feature I believe) and have correctly setup the mailto: in preferences to use Yahoo Mail. Recently in Firefox 62, the feature now only starts up the Compose mail function for Yahoo Mail but the message is blank. Previously it had automatically inserted the Subject with page title and body with page url. I've tested in both Linux and Windows, with all add-ons disabled and the behavior is the same.

Chosen solution

Okay, this would be easier, it's a script that grabs the title, URL and any currently selected text in the page and sends them to the currently working Yahoo mail "compose" URL. You would save it on your Bookmarks Toolbar or Bookmarks Menu as a "bookmarklet". When you click it, it runs the script. You can get it here:

https://www.jeffersonscher.com/res/sumomarklets.html#ymlink

Unfortunately, the selected text loses its format, so that extra feature may not be so useful. If you try it, let me know how it goes for you.


This is the script:

var sel=window.getSelection(); var text=''; if(!sel.isCollapsed){ text=sel.toString(); text=text.replace(/^\s*$/,'').replace(/\r/g,'\r').replace(/\n/g,'\n').replace(/^\s+|\s+$/g,' '); text=' \n\n'+text.replace(new RegExp(/\u2019/g),'\'').replace(new RegExp(/\u201A/g),',').replace(new RegExp(/\u201B/g),'\''); } window.open('https://compose.mail.yahoo.com/mailto:?subject='+encodeURIComponent(document.title)+'&body='+encodeURIComponent(window.location.href)+encodeURIComponent(text)+'');

Read this answer in context 1

Additional System Details

Installed Plug-ins

  • Shockwave Flash 31.0 r0

Application

  • User Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0

More Information

jscher2000
  • Top 10 Contributor
8568 solutions 70071 answers

Helpful Reply

I don't usually use Yahoo mail, but when I test it out, I see what you mean.

The standard "mailto" address for Yahoo is:

https://compose.mail.yahoo.com/?To=%s

For this page, Firefox's Email Link feature generates the following request (replacing the placeholder %s with details for the message):

https://compose.mail.yahoo.com/?To=mailto:?body=https://support.mozilla.org/en-US/questions/1235269&subject=Email link broken in Firefox 62 for Yahoo Mail - produces blank msg; does not insert subject and link | Firefox Support Forum | Mozilla Support

I don't know if Firefox changed, or if Yahoo doesn't like that any more, but either way, this would work:

https://compose.mail.yahoo.com/mailto:?body=https://support.mozilla.org/en-US/questions/1235269&subject=Email link broken in Firefox 62 for Yahoo Mail - produces blank msg; does not insert subject and link | Firefox Support Forum | Mozilla Support

So it would work if the standard address was shortened to:

https://compose.mail.yahoo.com/%s

It is an option to try to modify the file where this is stored (handlers.json), or you could try adding a new mailto handler in addition to the built-in one. I have to leave the keyboard, but will reply further later today.

I don't usually use Yahoo mail, but when I test it out, I see what you mean. The standard "mailto" address for Yahoo is: https://compose.mail.yahoo.com/?To=%s For this page, Firefox's Email Link feature generates the following request (replacing the placeholder %s with details for the message): [https://compose.mail.yahoo.com/?To=mailto:?body=https%3A%2F%2Fsupport.mozilla.org%2Fen-US%2Fquestions%2F1235269&subject=Email%20link%20broken%20in%20Firefox%2062%20for%20Yahoo%20Mail%20-%20produces%20blank%20msg%3B%20does%20not%20insert%20subject%20and%20link%20%7C%20Firefox%20Support%20Forum%20%7C%20Mozilla%20Support https://compose.mail.yahoo.com/'''?To='''mailto:?body=https://support.mozilla.org/en-US/questions/1235269&subject=Email link broken in Firefox 62 for Yahoo Mail - produces blank msg; does not insert subject and link | Firefox Support Forum | Mozilla Support] I don't know if Firefox changed, or if Yahoo doesn't like that any more, but either way, this ''would'' work: [https://compose.mail.yahoo.com/mailto:?body=https%3A%2F%2Fsupport.mozilla.org%2Fen-US%2Fquestions%2F1235269&subject=Email%20link%20broken%20in%20Firefox%2062%20for%20Yahoo%20Mail%20-%20produces%20blank%20msg%3B%20does%20not%20insert%20subject%20and%20link%20%7C%20Firefox%20Support%20Forum%20%7C%20Mozilla%20Support https://compose.mail.yahoo.com/mailto:?body=https://support.mozilla.org/en-US/questions/1235269&subject=Email link broken in Firefox 62 for Yahoo Mail - produces blank msg; does not insert subject and link | Firefox Support Forum | Mozilla Support] So it would work if the standard address was shortened to: https://compose.mail.yahoo.com/%s It is an option to try to modify the file where this is stored ('''handlers.json'''), or you could try adding a new mailto handler in addition to the built-in one. I have to leave the keyboard, but will reply further later today.
jscher2000
  • Top 10 Contributor
8568 solutions 70071 answers

Helpful Reply

Hmm, unfortunately, I don't see an "easy" way to do this. (Easy is relative, but running a command in a little window would be easier than what I'm going to describe here.)

It is possible to edit the handlers.json file which stores the download actions, and if the file becomes corrupted, you can remove it and have Firefox create a new one so it's not fatal. Nevertheless, you might want to create a backup as mentioned in the following "step by step".

The following mentions Windows several times; I would appreciate learning about any corrections for Linux.

(A) Open your current Firefox profile folder from the Troubleshooting Information page. Either

  • "3-bar" menu button > "?" Help > Troubleshooting Information
  • (menu bar) Help > Troubleshooting Information
  • type or paste about:support in the address bar and press Enter/Return

In the first table on the page, on the Profile Folder row, click the "Open Folder" / "Open Directory" button. This should launch a new window listing various files and folders in Windows Explorer (or your system's file browser).

Scroll down to where handlers.json is listed and pause in this area.

(B) Leaving that window open, switch back to Firefox and Exit, either:

  • "3-bar" menu button > Exit (or Quit)
  • (menu bar) File > Exit (or Quit)

Pause while Firefox finishes its cleanup before proceeding.

(C) Optional: Create a backup copy of handlers.json

In your profile folder, right-click handlers.json and click Copy. Then press Ctrl+v to paste and Windows should create a backup for you (handlers - Copy.json) next to the existing file or at the bottom of the list.

(D) Open handlers.json in a text editor

The easiest method for this will vary. For example:

(i) Open the Notepad program first, then drag and drop handlers.json into the empty body of Notepad to open it.

(ii) Right-click handlers.json > Open With and then select Notepad (or your favorite text editor) as the program to view/edit handlers.json.

Be careful not to use a program that will want to make permanent changes to the format of the file or it will be unusable. It should stay in a "plain text" format.

(E) Edit 4 characters out of the Yahoo URL

On Notepad's Format menu, enable Word Wrap if you can't see all of the text. Then find:

https://compose.mail.yahoo.com/?To=%s

Remove the bolded part:

https://compose.mail.yahoo.com/?To=%s

so the URL now looks like this:

https://compose.mail.yahoo.com/%s

Before saving, turn off Word Wrap to avoid adding any new line breaks into the file. Then File > Save the document and File > Exit from Notepad.

(F) Start Firefox back up again.

Now when email addresses or subject/body are sent to Yahoo mail, it should be able to "handle" them correctly.

Hmm, unfortunately, I don't see an "easy" way to do this. (Easy is relative, but running a command in a little window would be easier than what I'm going to describe here.) It is possible to edit the '''handlers.json''' file which stores the download actions, and if the file becomes corrupted, you can remove it and have Firefox create a new one so it's not fatal. Nevertheless, you might want to create a backup as mentioned in the following "step by step". ''The following mentions Windows several times; I would appreciate learning about any corrections for Linux.'' (A) Open your current Firefox profile folder from the Troubleshooting Information page. Either * "3-bar" menu button > "?" Help > Troubleshooting Information * (menu bar) Help > Troubleshooting Information * type or paste '''about:support''' in the address bar and press Enter/Return In the first table on the page, on the Profile Folder row, click the "Open Folder" / "Open Directory" button. This should launch a new window listing various files and folders in Windows Explorer (or your system's file browser). Scroll down to where '''handlers.json''' is listed and pause in this area. (B) Leaving that window open, switch back to Firefox and Exit, either: * "3-bar" menu button > Exit (or Quit) * (menu bar) File > Exit (or Quit) Pause while Firefox finishes its cleanup before proceeding. (C) Optional: Create a backup copy of handlers.json In your profile folder, right-click '''handlers.json''' and click Copy. Then press Ctrl+v to paste and Windows should create a backup for you (handlers - Copy.json) next to the existing file or at the bottom of the list. (D) Open handlers.json in a text editor The easiest method for this will vary. For example: (i) Open the Notepad program first, then drag and drop handlers.json into the empty body of Notepad to open it. (ii) Right-click handlers.json > Open With and then select Notepad (or your favorite text editor) as the program to view/edit handlers.json. ''Be careful not to use a program that will want to make permanent changes to the format of the file or it will be unusable. It should stay in a "plain text" format.'' (E) Edit 4 characters out of the Yahoo URL On Notepad's Format menu, enable Word Wrap if you can't see all of the text. Then find: https://compose.mail.yahoo''.''com/?To=%s Remove the bolded part: https://compose.mail.yahoo''.''com/'''?To='''%s so the URL now looks like this: https://compose.mail.yahoo''.''com/%s Before saving, turn off Word Wrap to avoid adding any new line breaks into the file. Then File > Save the document and File > Exit from Notepad. (F) Start Firefox back up again. Now when email addresses or subject/body are sent to Yahoo mail, it should be able to "handle" them correctly.
jscher2000
  • Top 10 Contributor
8568 solutions 70071 answers

Chosen Solution

Okay, this would be easier, it's a script that grabs the title, URL and any currently selected text in the page and sends them to the currently working Yahoo mail "compose" URL. You would save it on your Bookmarks Toolbar or Bookmarks Menu as a "bookmarklet". When you click it, it runs the script. You can get it here:

https://www.jeffersonscher.com/res/sumomarklets.html#ymlink

Unfortunately, the selected text loses its format, so that extra feature may not be so useful. If you try it, let me know how it goes for you.


This is the script:

var sel=window.getSelection(); var text=''; if(!sel.isCollapsed){ text=sel.toString(); text=text.replace(/^\s*$/,'').replace(/\r/g,'\r').replace(/\n/g,'\n').replace(/^\s+|\s+$/g,' '); text=' \n\n'+text.replace(new RegExp(/\u2019/g),'\'').replace(new RegExp(/\u201A/g),',').replace(new RegExp(/\u201B/g),'\''); } window.open('https://compose.mail.yahoo.com/mailto:?subject='+encodeURIComponent(document.title)+'&body='+encodeURIComponent(window.location.href)+encodeURIComponent(text)+'');

Okay, this would be easier, it's a script that grabs the title, URL and any currently selected text in the page and sends them to the currently working Yahoo mail "compose" URL. You would save it on your Bookmarks Toolbar or Bookmarks Menu as a "bookmarklet". When you click it, it runs the script. You can get it here: https://www.jeffersonscher.com/res/sumomarklets.html#ymlink Unfortunately, the selected text loses its format, so that extra feature may not be so useful. If you try it, let me know how it goes for you. ---- ''This is the script:'' <nowiki>var sel=window.getSelection(); var text=''; if(!sel.isCollapsed){ text=sel.toString(); text=text.replace(/^\s*$/,'').replace(/\r/g,'\r').replace(/\n/g,'\n').replace(/^\s+|\s+$/g,' '); text=' \n\n'+text.replace(new RegExp(/\u2019/g),'\'').replace(new RegExp(/\u201A/g),',').replace(new RegExp(/\u201B/g),'\''); } window.open('https://compose.mail.yahoo.com/mailto:?subject='+encodeURIComponent(document.title)+'&body='+encodeURIComponent(window.location.href)+encodeURIComponent(text)+''); </nowiki>

Modified by jscher2000

Question owner

@ jscher2000 Thanks a lot for the quick reply with all the detailed info.

Your bookmark method works and so does the url syntax but somehow, when I tried to manually change the mail handler for yahoo to https://compose.mail.yahoo.com/%s

in handlers.json as well as in user.prefs via about:config:

gecko.handlerService.schemes.mailto.0.uriTemplate

it doesn't work and starts with a blank new compose email. I really appreciate the effort in the bookmark script, but I personally would prefer the protocol handler method since it's more convenient for me.

It's strange because if I change the value to https://compose.mail.yahoo.com/mailto:?body=%s then it does start a new email with the body filled out with the %s expanded to what you mentioned.

@ jscher2000 Thanks a lot for the quick reply with all the detailed info. Your bookmark method works and so does the url syntax but somehow, when I tried to manually change the mail handler for yahoo to <code>https://compose.mail.yahoo.com/%s </code> in handlers.json as well as in user.prefs via about:config: <pre>gecko.handlerService.schemes.mailto.0.uriTemplate</pre> it doesn't work and starts with a blank new compose email. I really appreciate the effort in the bookmark script, but I personally would prefer the protocol handler method since it's more convenient for me. It's strange because if I change the value to <code>https://compose.mail.yahoo.com/mailto:?body=%s</code> then it does start a new email with the body filled out with the %s expanded to what you mentioned.

Modified by jimveta

jscher2000
  • Top 10 Contributor
8568 solutions 70071 answers

I didn't notice any effect of changing the preference in about:config.

Changing handlers.json did work for me, but it's always possible that something changed on Yahoo's side since my testing.

I didn't notice any effect of changing the preference in about:config. Changing handlers.json did work for me, but it's always possible that something changed on Yahoo's side since my testing.

Question owner

Welp, I tried everything I can to get the direct editing of handler.json method to work, including trying on Linux this time and starting a new profile with no add-ons but still no luck. It seems on my end, firefox does not handle expanding the "../%s" by itself if it's immediately following the "https://compose.mail.yahoo.com/"

The actually url parameters yahoo uses didn't change, so your expansion still works.

Also, thank you for filing an official mozilla bug https://bugzilla.mozilla.org/show_bug.cgi?id=1494105

Anyways, I marked the bookmark workaround as a solution.

Welp, I tried everything I can to get the direct editing of handler.json method to work, including trying on Linux this time and starting a new profile with no add-ons but still no luck. It seems on my end, firefox does not handle expanding the "../%s" by itself if it's immediately following the "https://compose.mail.yahoo.com/" The actually url parameters yahoo uses didn't change, so your expansion still works. Also, thank you for filing an official mozilla bug https://bugzilla.mozilla.org/show_bug.cgi?id=1494105 Anyways, I marked the bookmark workaround as a solution.
klgrube 0 solutions 19 answers

I'm using Firefox Quantum 63.0.1. I have Yahoo mail set as my default mailto client. When I click on a mailto link on a website, a blank yahoo compose email opens in a new tab, but there is no "to" address and no subject. I've tried some of these recommendations, and nothing is working. Any suggestions?

Just tell me what to change in Handlers or anywhere else and I'll gladly do that. I've tried changing the handler to just %s, and that didn't work. Help, please. But be specific about any changes you might recommend.

I'm using Firefox Quantum 63.0.1. I have Yahoo mail set as my default mailto client. When I click on a mailto link on a website, a blank yahoo compose email opens in a new tab, but there is no "to" address and no subject. I've tried some of these recommendations, and nothing is working. Any suggestions? Just tell me what to change in Handlers or anywhere else and I'll gladly do that. I've tried changing the handler to just %s, and that didn't work. Help, please. But be specific about any changes you might recommend.

Modified by klgrube

jscher2000
  • Top 10 Contributor
8568 solutions 70071 answers

Hi klgrube, I don't know what address Yahoo wants now. It's very frustrating. I can try to look at it tonight.

Hi klgrube, I don't know what address Yahoo wants now. It's very frustrating. I can try to look at it tonight.
klgrube 0 solutions 19 answers

Thank you very much.

Thank you very much.
jscher2000
  • Top 10 Contributor
8568 solutions 70071 answers

I'm using the "new" Yahoo mail, not the classic, but I don't think the classic is working, either.

Firefox replaces the %s parameter in the handler URL with an encoded version of the link:

ORIGINAL LINK: mailto:bob@example.com

ENCODED LINK: mailto%3Abob%40example.com

I don't see a URL that makes Yahoo accept that currently. So for example, this doesn't work --

FAIL: https://mrd.mail.yahoo.com/compose/?to=mailto%3Abob%40example.com

But if you were to remove the mailto: (mailto%3A) it works --

WORKS: https://mrd.mail.yahoo.com/compose/?to=bob%40example.com

That doesn't really help with the built-in feature. Yahoo needs to restore support for Firefox's format, or you need to use an add-on or other workaround.

I'm using the "new" Yahoo mail, not the classic, but I don't think the classic is working, either. Firefox replaces the %s parameter in the handler URL with an encoded version of the link: ORIGINAL LINK: mailto:bob@example''.''com ENCODED LINK: mailto%3Abob%40example''.''com I don't see a URL that makes Yahoo accept that currently. So for example, this doesn't work -- FAIL: https://mrd.mail.yahoo.com/compose/?to=mailto%3Abob%40example.com But if you were to remove the mailto: (mailto%3A) it works -- WORKS: https://mrd.mail.yahoo.com/compose/?to=bob%40example.com That doesn't really help with the built-in feature. Yahoo needs to restore support for Firefox's format, or you need to use an add-on or other workaround.
JudyPanama 0 solutions 4 answers

I'm using Firefox Quantum 63.0.3 on my desktop PC. I have Yahoo mail set as my default mailto client. When I click on a mailto link on a website, a blank Yahoo compose email opens in a new tab, but there is no "to" address and no subject (see attached screen shot).

This happens on all the websites I go to on Firefox on my PC. I checked on my android phone (Samsung), where I also use Yahoo for email, and I did not have the problem. The phone uses a Samsung browser. When I clicked on an email address in a website, a blank Yahoo compose mail opened with the address in the "to" line as it is supposed to be.

I also checked it on my Kindle Fire, which uses Silk browser and the Yahoo Mail app. Again, the compose email screen came up with the address in the "to" line.

So the problem seems to be something that has happened with recent Firefox updates. It is not working right with Yahoo mailto setting.

All of those fixes listed so far make no sense, unless a person is highly technical. Even so, I don't see that any of them worked.

I'm using Firefox Quantum 63.0.3 on my desktop PC. I have Yahoo mail set as my default mailto client. When I click on a mailto link on a website, a blank Yahoo compose email opens in a new tab, but there is no "to" address and no subject (see attached screen shot). This happens on all the websites I go to on Firefox on my PC. I checked on my android phone (Samsung), where I also use Yahoo for email, and I did not have the problem. The phone uses a Samsung browser. When I clicked on an email address in a website, a blank Yahoo compose mail opened with the address in the "to" line as it is supposed to be. I also checked it on my Kindle Fire, which uses Silk browser and the Yahoo Mail app. Again, the compose email screen came up with the address in the "to" line. So the problem seems to be something that has happened with recent Firefox updates. It is not working right with Yahoo mailto setting. All of those fixes listed so far make no sense, unless a person is highly technical. Even so, I don't see that any of them worked.
JudyPanama 0 solutions 4 answers

P.S. screen shot wouldn't load, but it was a blank Yahoo email page.

P.S. screen shot wouldn't load, but it was a blank Yahoo email page.
jscher2000
  • Top 10 Contributor
8568 solutions 70071 answers

Hi JudyPanama, yes, someone is going to reach out to Yahoo and ask them to restore support for the method built into Firefox. No idea what the timeline is getting it fixed.

Hi JudyPanama, yes, someone is going to reach out to Yahoo and ask them to restore support for the method built into Firefox. No idea what the timeline is getting it fixed.
klgrube 0 solutions 19 answers

I did reach out to them. I opened a customer service support case and keep bugging them about every few days. Here's their latest response:

Hi Karen,

Thanks for getting back to us.

I'm sorry, but it's taking longer than we expected to fix this. Rest assured, we’re focused on getting this corrected for you.

There are several factors that go into resolving this type of issue including diagnosing, troubleshooting, and implementing the fix. As such, we're unable to provide an estimated time for when this issue will be resolved.

We appreciate your continued patience while we work to get this fixed as quickly as possible.

​​​​​​​Warm Regards,

Julia

Yahoo Customer Care

I did reach out to them. I opened a customer service support case and keep bugging them about every few days. Here's their latest response: Hi Karen, Thanks for getting back to us. I'm sorry, but it's taking longer than we expected to fix this. Rest assured, we’re focused on getting this corrected for you. There are several factors that go into resolving this type of issue including diagnosing, troubleshooting, and implementing the fix. As such, we're unable to provide an estimated time for when this issue will be resolved. We appreciate your continued patience while we work to get this fixed as quickly as possible. ​​​​​​​Warm Regards, Julia Yahoo Customer Care

Modified by klgrube

jscher2000
  • Top 10 Contributor
8568 solutions 70071 answers

I created an add-on that might be more convenient than using the earlier workarounds.

https://addons.mozilla.org/firefox/addon/yahoo-mail-email-link-fix/

It integrates into the right-click context menu:

  • email link => sends the address to Yahoo mail
  • page => sends page title as subject and url as the body

If you try it, let me know how it goes.

I created an add-on that might be more convenient than using the earlier workarounds. https://addons.mozilla.org/firefox/addon/yahoo-mail-email-link-fix/ It integrates into the right-click context menu: * email link => sends the address to Yahoo mail * page => sends page title as subject and url as the body If you try it, let me know how it goes.
JudyPanama 0 solutions 4 answers

If I right click on the link and select Yahoo mail, it opens a new mail page with the address. So that works. I do not see an option called "page" to get the subject line, but that doesn't matter, because I can add the subject. Thank you for this add-on!

If I right click on the link and select Yahoo mail, it opens a new mail page with the address. So that works. I do not see an option called "page" to get the subject line, but that doesn't matter, because I can add the subject. Thank you for this add-on!
jscher2000
  • Top 10 Contributor
8568 solutions 70071 answers

Hi JudyPanama, I didn't explain that very well, did I. What I meant was, if you right-click a blank area of the page instead of an email link, the menu item changes and generates a message to share a link to the page.

Hi JudyPanama, I didn't explain that very well, did I. What I meant was, if you right-click a blank area of the page instead of an email link, the menu item changes and generates a message to share a link to the page.
JudyPanama 0 solutions 4 answers

That doesn't help. I don't need to share a link to the page. I need the email link in the page to generate an email page with that address in the To line. What I first understood that you said gives me that.

That doesn't help. I don't need to share a link to the page. I need the email link in the page to generate an email page with that address in the To line. What I first understood that you said gives me that.
jscher2000
  • Top 10 Contributor
8568 solutions 70071 answers

Okay, you'll notice the menu item looks different if you happen to "miss" when right-clicking.

Okay, you'll notice the menu item looks different if you happen to "miss" when right-clicking.