[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnats/454: mail-format incomplete support for multi-enum-in-file fields
From: |
Aaron . Hinck |
Subject: |
gnats/454: mail-format incomplete support for multi-enum-in-file fields |
Date: |
Fri, 07 Feb 2003 14:15:39 -0500 |
>Number: 454
>Notify-List:
>Category: gnats
>Synopsis: mail-format incomplete support for multi-enum-in-file fields
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Feb 07 14:15:39 -0500 2003
>Originator: Aaron Hinck
>Release: gnats 3.999.2
>Organization:
CES International
>Environment:
>Description:
When a multi-enum-in-file field is specified in a mail-format section, gnats
evaluates the PR's field value as a whole NOT as a sequence of values.
>How-To-Repeat:
1) Create a "customers" flat-text-file under gnats-adm/
none:No Applicable Projects:foo1:foo2
proj1:Special Project 1:foo3:foo4
proj2:Secret Project 2:foo5:foo6
proj3:Project Bluebook:foo7:foo8
2) Define a new field in dbconfig:
field "Customer-Xref" {
description "Which Projects are effected by this PR?"
multi-enumerated-in-file {
path "customers"
field {
"customer" "full-project-name" "project-manager" "project-engineer"
}
key "customer"
default "none"
separators " :"
}
query-default inexact-regexp
textsearch
}
3) Add a reference to customer-xref[project-engineer] to the mail-format
"audit-mail" and "initial-pr-notification":
mail-format "audit-mail" (and "initial-pr-notification") {
...
to-addresses {
...
"Customer-Xref[project-engineer]"
...
}
}
4) Create a new PR, choose proj1 and proj3 for the customer-xref field.
The email header will have the email address of the other to-addresses entries
BUT it will only have the email of the FIRST project-engineer.
>Fix:
adm.c -- getAdmSubfieldValue() only calls find_chain_entry_no_copy once --
meaning it can only get a single value -- ( whereas pr.c verifyMultiEnum()
steps through the char* ).
Call chain ---
mail.c - composeMailMessage() -> generateMailAddress() ->
field.c get_field_value() ->
adm.c getAdmSubfieldValue() -> find_chain_entry_nocopy()
>Unformatted:
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- gnats/454: mail-format incomplete support for multi-enum-in-file fields,
Aaron . Hinck <=