Bug 17207 - linkedresource does not embed image on linux
Summary: linkedresource does not embed image on linux
Status: NEW
Alias: None
Product: Class Libraries
Classification: Mono
Component: General (show other bugs)
Version: 2.10.x
Hardware: PC Linux
: --- normal
Target Milestone: Untriaged
Assignee: Bugzilla
URL:
Depends on:
Blocks:
 
Reported: 2014-01-13 16:34 UTC by Alex Wielhouwer
Modified: 2014-01-13 16:34 UTC (History)
1 user (show)

See Also:
Tags:
Is this bug a regression?: ---
Last known good build:


Attachments

Description Alex Wielhouwer 2014-01-13 16:34:35 UTC
I have narrowed the issue to the following example:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net.Mail;

namespace OnCue24
{
    class Program
    {
        static void Main(string[] args)
        {
            Program a = new Program();
        }

        public Program()
        {
            Mailer("<html><body>This is a test<br /><img src=\"cid:logo\"></body></html>", "Test message", "project", "test", "_fullpathtogiffile_",
                "image/gif", "_targetemail", "_smtplogonid", "_smtplogonpassword", "_smtpserver", "_senderemail");
        }

        public void Mailer(string body, string subject, string project, string path, string attach, string attachtype,
            string useremail, string sendid, string sendpw, string sendsrvr, string sender)
        {
            SmtpClient smtp = new SmtpClient(sendsrvr);
            smtp.Credentials = new System.Net.NetworkCredential(sendid, sendpw);

            MailMessage m = new MailMessage();
            m.Subject = subject;
            AlternateView html = AlternateView.CreateAlternateViewFromString(body, Encoding.UTF8, System.Net.Mime.MediaTypeNames.Text.Html);

            if (!String.IsNullOrWhiteSpace(attach))
            {
                LinkedResource logo = new LinkedResource(attach, attachtype);
                logo.ContentId = "logo";
                logo.ContentType.MediaType = attachtype;
                logo.TransferEncoding = System.Net.Mime.TransferEncoding.Base64;
                logo.ContentType.Name = logo.ContentId;
                logo.ContentLink = new Uri("cid:" + logo.ContentId);
                html.LinkedResources.Add(logo);
            }
            m.AlternateViews.Add(html);
            m.IsBodyHtml = true;

            m.To.Add(useremail);
            m.From = new MailAddress(sender, "displayname");
            smtp.Send(m);
            m.Dispose();
            m = null;
        }
 
    }
}

on Windows 7 using Latest DotNet the embedded image is displayed correctly.
on Ubuntu 12.04.3 (Mono 2.10.8.1) the image is not present and a box with an x inside is shown instead, like a web page displays when it cannot find the image. 
The same image gif, logon userid, smtp server and executable is used in both tests.

Note You need to log in before you can comment on or make changes to this bug.