From 583f8c1d0279f1a64888264d1825ccf6469a03f6 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Sun, 28 Sep 2003 19:29:36 +0000 Subject: [PATCH] Added set_disk_device_job_error_message() for setting an error message, when an error occurs while executing a job. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4843 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- .../disk_device_manager/disk_device_manager.h | 1 + .../disk_device_manager/disk_device_manager.cpp | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/headers/private/kernel/disk_device_manager/disk_device_manager.h b/headers/private/kernel/disk_device_manager/disk_device_manager.h index 6342af1c9b..b3fc6b4d64 100644 --- a/headers/private/kernel/disk_device_manager/disk_device_manager.h +++ b/headers/private/kernel/disk_device_manager/disk_device_manager.h @@ -113,6 +113,7 @@ disk_system_id find_disk_system(const char *name); bool update_disk_device_job_progress(disk_job_id jobID, float progress); bool update_disk_device_job_extra_progress(disk_job_id jobID, const char *info); +bool set_disk_device_job_error_message(disk_job_id jobID, const char *message); uint32 update_disk_device_job_interrupt_properties(disk_job_id jobID, uint32 interruptProperties); // returns one of B_DISK_DEVICE_JOB_{CONTINUE,CANCEL,REVERSE} diff --git a/src/kernel/core/disk_device_manager/disk_device_manager.cpp b/src/kernel/core/disk_device_manager/disk_device_manager.cpp index e09fcadd15..f2b3441214 100644 --- a/src/kernel/core/disk_device_manager/disk_device_manager.cpp +++ b/src/kernel/core/disk_device_manager/disk_device_manager.cpp @@ -220,6 +220,20 @@ update_disk_device_job_extra_progress(disk_job_id jobID, const char *info) return false; } +// set_disk_device_job_error_message +bool +set_disk_device_job_error_message(disk_job_id jobID, const char *message) +{ + KDiskDeviceManager *manager = KDiskDeviceManager::Default(); + if (ManagerLocker locker = manager) { + if (KDiskDeviceJob *job = manager->FindJob(jobID)) { + job->SetErrorMessage(message); + return true; + } + } + return false; +} + // update_disk_device_job_interrupt_properties uint32 update_disk_device_job_interrupt_properties(disk_job_id jobID,