当某些邮件被选中时,Mail.app会崩溃

我最近从OS X 10.4迁移到10.5。 当我们运行Mail.app时,它会在某些消息被点击时崩溃。

我已经尽了一切努力以不同的方式获取邮件 – 以不同的方式导入邮件,删除〜/ Library / Preferences / com.apple.mail.plist,并重新导入等。

当然,这个问题似乎与单个消息有关,因为单击某个消息,即使它位于不同的文件夹中(因为它被导入的方式)也会导致崩溃。

大多数十几个崩溃的日志开始是这样的:

Process: Mail [17905] Path: /Applications/Mail.app/Contents/MacOS/Mail Identifier: com.apple.mail Version: 3.3 (926.1) Build Info: Mail-9260100~1 Code Type: X86 (Native) Parent Process: launchd [119] Date/Time: 2009-09-29 10:47:52.713 -0600 OS Version: Mac OS X 10.5.7 (9J61) Report Version: 6 Anonymous UUID: 285B8613-3118-4F91-A28C-BC405D91FAFD Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: KERN_INVALID_ADDRESS at 0x0000000089082454 Crashed Thread: 0 Application Specific Information: -[MessageContentController _fetchContentsForMessage:fromStore:withViewingState:] 

一个条目显示:

 Application Specific Information: -[MessageTransfer _synchronouslyPerformTransfer] +[Library synchronouslyUpdateMessageFiles] -[MessageContentController _fetchContentsForMessage:fromStore:withViewingState:] 

更新

请看下面的答案我的意见。

我能够确定哪个文件对应于哪个电子邮件。 首先,我必须弄清楚电子邮件文件夹在哪里。 查看〜/ Library / com.apple.mail.plist帮助。 (我想跑步

 defaults read com.apple.mail | grep AccountPath 

会得到这些信息)

在这种情况下,该文件夹类似于:

 ~/Library/Mail/POP-first.last#mail.ourdomain.com@IP_ADDRESS/INBOX.mbox/Messages 

然后我去了那个目录,并发出这个命令:

 grep -r . -e "^From: " -e "^Subject: " -e "^Date: " -m 3 > summary.txt 

然后我打开文件并在其中search。 search主题可以很容易地查看消息所在的文件。

这样做,我看了一些文件 – 没有什么似乎是我的错误:(

更新2 – 正在进行的问题

我希望这只会影响到旧的电子邮件,但是昨天(10月21日)收到的电子邮件也显示了这个问题。

更新3 – 系统日志

奇怪的是,当我以用户的身份打开控制台时,没有在“所有消息”或“控制台消息”部分显示出来。 这是我从拖拽system.log文件中获得的信息,当我打开Mail时,select了一条会使其崩溃的消息,并且再次重复该过程:

 Oct 23 10:01:29 [computer-name] Console[56949]: Error: status 2 returned by _asl_server_query Oct 23 10:01:39 [computer-name] ReportCrash[57070]: Formulating crash report for process Mail[56828] Oct 23 10:01:40 [computer-name] ReportCrash[57070]: Saved crashreport to /Users/[user-name]/Library/Logs/CrashReporter/Mail_2009-10-23-100136_[computer-name].crash using uid: 504 gid: 504, euid: 504 egid: 504 Oct 23 10:01:40 [computer-name] com.apple.launchd[296] ([0x0-0x14c14c].com.apple.mail[56828]): Exited abnormally: Segmentation fault Oct 23 10:02:01 [computer-name] ReportCrash[57098]: Formulating crash report for process Mail[57085] Oct 23 10:02:02 [computer-name] ReportCrash[57098]: Saved crashreport to /Users/[user-name]/Library/Logs/CrashReporter/Mail_2009-10-23-100159_[computer-name].crash using uid: 504 gid: 504, euid: 504 egid: 504 Oct 23 10:02:02 [computer-name] com.apple.launchd[296] ([0x0-0x150150].com.apple.mail[57085]): Exited abnormally: Segmentation fault Oct 23 10:03:02 [computer-name] Console[56949]: Error: status 2 returned by _asl_server_query 

附加问题

对我来说,数据是好的,应用程序(或者它所依赖的某个库或框架)是不正确的,这是一个很小的机会。 有没有好的方法来检查? (我可以recursion地读取整个硬盘驱动器,然后在具有原始图像的机器上执行此操作,但是我确信数据中仍然会有很多噪音。)

我正在复制旧分区的库文件夹,并尝试在另一台计算机上进行恢复。

除非我忽略了,否则我不觉得你提到了你正在使用的10.5版本。 我在运行10.5.4时打开附件(甚至读取一些消息)时,Mail.app崩溃。 我升级到10.5.5,但问题依然存在。 从10.5.5开始,我跳到了10.5.8,这个新版本的Mail.app完全解决了这个问题。 Mail.app不再坠毁。 我已经升级到雪豹,我相信也带来了最新版本的Mail.app。 自那以后,我一直很开心。

只是重申,问题是:即使邮件存储本身已经成功迁移到10.5,Mail.app将尝试查看某些单个邮件时崩溃。

你当然需要检查一些东西。

  • 首先添加附件视图列,查看 – >列 – >附件。 查看导致邮件崩溃的消息是否与附件对应。
  • 其次推断是否在崩溃的所有消息中有共同点。
  • 第三个testing,看看相同的邮件消息是否会一致使应用程序崩溃。 如果这样做,那么至less你知道这是消息的问题,而不是应用程序。
  • 此外,请尝试禁用内置的ACL,以查看是否有某种权限错误。 在命令行上键入: fsaclctl -p / -d

    请让我们知道你find了什么。

    你是否使用Console.app(左侧面板:数据库 – >所有消息)检查是否有任何第三方插件或扩展程序在Mail启动之前或阅读这些崩溃的电子邮件之前加载?

    如果问题来自Mail之外的其他内容,则应该logging在那里。